2015-10-07 2 views
0

У меня есть небольшая проблема. На моей странице aspx у меня есть iframe, который содержит сетки, таблицы и т. Д., И они всегда меняют свою высоту. Предыдущая команда разработчиков решила проблему, указав атрибут height iframe на константу 3500px. Это не так элегантно, поэтому я добавил JS-код, который автоматически проверяет содержимое и корректирует высоту iframe. я получил сценарий JS здесь:iframe автоматическая регулировка высоты не работает с IE

iframe Auto Adjust Height as content changes

Вопрос заключается в том, что этот JS-код хорошо работает в Chrome и Firefox, и почти каждый раз в IE. Иногда у меня появляется сообщение об ошибке в IE, в котором говорится: «невозможно получить свойство« nodename »неопределенного или нулевого ссылочного jquery» или «Invalid argument». С этого момента функция внутри setInterval больше никогда не будет работать, и поэтому высота iframe никогда не будет изменена. Я сделал некоторые изменения, и эта функция проверки высоты вызывается из события onload тела. Теоретически этот js-скрипт будет запускаться при загрузке всей структуры dom. Firefox и Chrome в порядке, и 8 раз из 10 IE также работает.

Может кто-нибудь мне помочь? Есть ли решение, которое вы можете мне предложить? Большое спасибо.

ответ

0

Выполнить код внутри, чтобы убедиться, что он выполняется, когда полная страница была построена:

$(document).ready(function(e) { 

    // .. iframe resize here 
}); 

спорадические неудачи, как это на странице загрузки почти всегда вызывается выполнением JavaScript перед загрузкой страницы и DOM готов.

+0

Привет, Coulton, ранее я также пробовал это, но результат был тот же. Теперь я посоветовал другим, использовать Chrome или Firefox. Временно я изменил код и перед частью setInterval я проверяю браузер. В случае IE высота будет установлена ​​на 3500 px othervise, код JS будет выполнен. –

Смежные вопросы