В опере как всегда всё отлично работает, а вот в хроме опять же есть предыдущая страничка была в высоту больше, то если страничка меньшей высоты остаётся высота предыдущей (большей по ысоте)
ТЫК Зато при скрипте который ниже, в хроме высота выравнивается верно но в опере наоборот. <!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> |
Просто как не хочется делать выбор между хромом и оперой :(
|
Посмотрел ваш "тык", походил по страничкам, вроде всё чётко работает, что в опере, что хроме, что не так?
Хотя нет, вижу у вас на других страничках старый код выравнивания остался. |
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> |
Вставите свои адреса, у меня работает, что в опере, что в хроме.
<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 большое вам спасибо! :)
|
Очень хорошо помогли
|
Цитата:
хотя я и до сих пор не понимаю зачем городить этот выбор между contentWindow.document и contentDocument, если contentWindow поддерживается везде, кроме IE5, про который уже давно забыли, и это самый короткий кроссбраузерный способ получить документ фрейма (frameObject.contentWindow.document), а contentDocument не поддерживается IE<8 и соответственно не работает в IE8+ в документе без doctype, так как в этом случае идёт переход в режим совместимости хотя если забить на IE7 и тестить при указании doctype, то contentDocument конечно лучше Цитата:
|
bes,
Хах, ясно, все приходит с опытом, а я так ничего не начал понимать в jquery |
Цитата:
frameName.document |
Часовой пояс GMT +3, время: 06:45. |