Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 13.06.2012, 21:02
Интересующийся
Отправить личное сообщение для spals Посмотреть профиль Найти все сообщения от spals
 
Регистрация: 13.06.2012
Сообщений: 18

В опере как всегда всё отлично работает, а вот в хроме опять же есть предыдущая страничка была в высоту больше, то если страничка меньшей высоты остаётся высота предыдущей (большей по ысоте)

ТЫК

Зато при скрипте который ниже, в хроме высота выравнивается верно но в опере наоборот.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 <title>auto iframe height adjust</title>
 <style>
 </style>
 <script type="text/javascript">
 <!--//
 function sizeFrame(frameId) {
 var F = document.getElementById(frameId);
 if(F.contentDocument) {
 F.height = F.contentDocument.documentElement.scrollHeight+30; //FF 3.0.11, Opera 9.63, and Chrome
 } else {



 F.height = F.contentWindow.document.body.scrollHeight+30; //IE6, IE7 and Chrome

 }

 }

 //-->
 </script>
 </head>
 <body>
 <iframe width="100%" id="myFrame" src="http://cs.city.kg/cs" scrolling="no" frameborder="0" onload="sizeFrame('myFrame')">
 </iframe>
 </body>
 </html>
Ответить с цитированием
  #12 (permalink)  
Старый 13.06.2012, 21:32
Интересующийся
Отправить личное сообщение для spals Посмотреть профиль Найти все сообщения от spals
 
Регистрация: 13.06.2012
Сообщений: 18

Просто как не хочется делать выбор между хромом и оперой
Ответить с цитированием
  #13 (permalink)  
Старый 13.06.2012, 22:07
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Посмотрел ваш "тык", походил по страничкам, вроде всё чётко работает, что в опере, что хроме, что не так?
Хотя нет, вижу у вас на других страничках старый код выравнивания остался.

Последний раз редактировалось bes, 13.06.2012 в 22:16.
Ответить с цитированием
  #14 (permalink)  
Старый 13.06.2012, 22:20
Интересующийся
Отправить личное сообщение для spals Посмотреть профиль Найти все сообщения от spals
 
Регистрация: 13.06.2012
Сообщений: 18

bes об этом я вам и говорю.
Надо как то совместить:

Как только не пробовал совместить код у меня ничего не вышло.

Это для хрома
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 <title>auto iframe height adjust</title>
 <style>
 </style>
 <script type="text/javascript">
 <!--//
 function sizeFrame(frameId) {
 var F = document.getElementById(frameId);
 if(F.contentDocument) {
 F.height = F.contentDocument.documentElement.scrollHeight+0; //FF 3.0.11, Opera 9.63, and Chrome
 } else {



 F.height = F.contentWindow.document.body.scrollHeight+0; //IE6, IE7 and Chrome

 }

 }

 //-->
 </script>
 </head>
 <body>
 <iframe width="100%" id="myFrame" src="http://cs.city.kg/cs" scrolling="no" frameborder="0" onload="sizeFrame('myFrame')"
  onload=" this.height = this.contentWindow.document.body.scrollHeight; 
"></iframe>
 </body>
 </html>


Это для оперы
<iframe src="http://cs.city.kg/cs" width="100%" scrolling="no" frameborder="0" marginheight="0" marginwidth="0"
  onload=" this.height = this.contentWindow.document.body.scrollHeight; 
"></iframe>
Ответить с цитированием
  #15 (permalink)  
Старый 13.06.2012, 23:46
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Вставите свои адреса, у меня работает, что в опере, что в хроме.
<iframe width="100%" id="myFrame" src="index1.html" scrolling="no" frameborder="0"
   onload="
    var content = this.contentWindow || this.contentDocument;
    this.height = 0;
    this.height = content.document.body.scrollHeight; 
" >
</iframe>
<button onclick="document.getElementById('myFrame').location.href = 'index2.htm'">click</button>

Последний раз редактировалось bes, 14.06.2012 в 00:06.
Ответить с цитированием
  #16 (permalink)  
Старый 14.06.2012, 00:14
Интересующийся
Отправить личное сообщение для spals Посмотреть профиль Найти все сообщения от spals
 
Регистрация: 13.06.2012
Сообщений: 18

bes большое вам спасибо!
Ответить с цитированием
  #17 (permalink)  
Старый 14.06.2012, 00:18
Интересующийся
Отправить личное сообщение для spals Посмотреть профиль Найти все сообщения от spals
 
Регистрация: 13.06.2012
Сообщений: 18

Очень хорошо помогли
Ответить с цитированием
  #18 (permalink)  
Старый 31.05.2013, 19:57
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от bes
 var content = this.contentWindow || this.contentDocument;
4
    this.height = 0;
5
    this.height = content.document.body.scrollHeight;
со временем понимаешь какую хрень писал, получая ссылку либо на окно фрейма, либо на его документ, а потом используя ссылку лишь на окно

хотя я и до сих пор не понимаю зачем городить этот выбор между contentWindow.document и contentDocument,
если contentWindow поддерживается везде, кроме IE5, про который уже давно забыли, и это самый короткий кроссбраузерный способ получить документ фрейма (frameObject.contentWindow.document),
а contentDocument не поддерживается IE<8 и соответственно не работает в IE8+ в документе без doctype, так как в этом случае идёт переход в режим совместимости
хотя если забить на IE7 и тестить при указании doctype, то contentDocument конечно лучше


Сообщение от bes
Заработает, когда будет на сервере (или через denwer, например), на локальном компьютере проверить не даст политика безопасности.
сейчас понимаю, что денвер для лохов
Ответить с цитированием
  #19 (permalink)  
Старый 16.12.2013, 21:44
Интересующийся
Отправить личное сообщение для spals Посмотреть профиль Найти все сообщения от spals
 
Регистрация: 13.06.2012
Сообщений: 18

bes,
Хах, ясно, все приходит с опытом, а я так ничего не начал понимать в jquery
Ответить с цитированием
  #20 (permalink)  
Старый 16.12.2013, 22:59
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от bes
и это самый короткий кроссбраузерный способ

frameName.document
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача параметров javascript между iframe и документом. freedon Events/DOM/Window 8 05.05.2011 16:29
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34
ajax, iframe, chrome - проблема Aderba AJAX и COMET 2 04.08.2010 23:40
Javascript запрещающий открывать iframe в новом окне. HELP! Андреи Events/DOM/Window 11 26.09.2009 07:36