JQuery и фреймы – $ (document) .ready не работает

У меня есть страница с некоторым кодом в js и jQuery, и она работает очень хорошо. Но, к сожалению, весь мой сайт очень старый и использует фреймы. Поэтому, когда я загружал свою страницу внутри фрейма, $(document).ready() не запускается.

Мой набор фреймов выглядит так:

 <frameset rows="79,*" frameBorder="1" frameSpacing="1" bordercolor="#5996BF" noresize> <frame name="header" src="Operations.aspx?main='Info.aspx'" marginwidth="0" marginheight="0" scrolling="no" noresize frameborder="0"> <frame name="main" src="Info.aspx" marginwidth="0" marginheight="0" scrolling="auto" noresize frameborder="0"> </frameset> 

Моя страница загружается в main фрейм. Что мне делать?

  • Предварительно загрузите mp3-файл в очередь, чтобы избежать задержек с воспроизведением следующего файла в очереди
  • Доступ к данным загруженного json-файла с помощью javascript
  • Как расширить Google Analytics для отслеживания AJAX и т. Д. (Согласно документам H5BP)
  • Передача переменных post через ajax
  • Как установить ориентацию (загрузить изображение) перед сохранением в папке (Javascript)?
  • Начните выполнение функции jQuery, когда я перейду к конкретному <div>
  • $ (Document) .ready и iframe content
  • Rails 4: как использовать $ (document) .ready () с турбо-ссылками
  • 5 Solutions collect form web for “JQuery и фреймы – $ (document) .ready не работает”

    Я попробовал метод, упомянутый в другом комментарии:

     $("#frameName").ready(function() { // Write you frame on load javascript code here } ); 

    И это не сработало для меня.

    Это сделало:

     $("#frameName").load( function() { //code goes here } ); 

    Даже при том, что событие не срабатывает так быстро – оно ждет, пока загрузятся изображения и css.

    Я предполагаю, что это аналогичная проблема, с которой я столкнулся с DOMContentLoaded в iframe.

    Я написал сообщение в блоге об этом .

    Если вы хотите запустить событие onload для своих кадров, выполните следующие действия:

    1. Назначьте id и name для каждого <frame> . Убедитесь, что значение атрибута id и name одинаково.

    2. Используйте следующий код, чтобы запустить событие onload в кадре:

       $("frameName").ready(function() { // Write your frame onload code here } 

    Я знаю, что это старая тема. Но чтобы помочь некоторым из вас, кто достигает этой страницы, вот мое решение:

     $($("#frameName")[0].contentWindow.document).ready(function() { // Write you frame onready code here }); 

    Вы пытались поместить код jQuery на страницу Info.aspx?

    Interesting Posts

    IE toLocaleString имеет странные символы в результатах

    Угловое 2: TypeError: l_thing0 не определено в

    Определить, было ли событие прокрутки создано пользователем

    Как установить базовый href страницы в Javascript?

    OpenLayers, хорошая кластеризация маркеров

    Множественное наследование с использованием классов

    Быстрое определение времени простоя в JavaScript

    Cross-Origin Resource Sharing (CORS) – я что-то упустил?

    Как получить текущую дату в JavaScript?

    JavaScript: лучше ли использовать innerHTML или (много) createElement-вызовы для добавления сложной структуры div?

    Отправить данные POST с помощью XMLHttpRequest

    Поместив html внутри iframe (используя javascript)

    Google выдает ошибку «Невозможно прочитать свойство» с нулевой ошибкой после входа / выхода из системы, если кнопка удалена со страницы

    Javascript Преобразование времени человека в метку времени

    Как наблюдать изменение привязки компонентов с помощью углового компонента

    JavaScript делает сайт умным, красочным и простым использованием.