$ (document) .ready () не срабатывает после перенаправления с помощью window.location - PullRequest
1 голос
/ 03 июня 2011

Я прочитал другие вопросы

jQuery $ (document) .ready () не запускается после window.location.href

jQuery $ (document) .ready () не запускается

Почему $ (document). Уже не запускается для меня?

пока ни одно из решений не работает...

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

Я пытался использовать $ (window) .load () для того же результата.Firebug не показывает ошибки и показывает загружаемый скрипт, однако точка останова, помещенная в функцию ready (), никогда не срабатывает.

Существуют ли какие-либо ограничения безопасности в Firefox, которые могут быть причиной проблемы, и если да, то как мне их обойти?

Ответы [ 2 ]

0 голосов
/ 23 июля 2011

Пока я не найду лучшую альтернативу, <body onUnload=""> работает для меня в FF5.Я думаю, что ваша проблема может выйти за рамки этого исправления?

0 голосов
/ 02 июля 2011

У меня была такая же проблема при использовании назад / вперед. Если у вас нет этой проблемы с назад / вперед, это, вероятно, опечатка. Но это может быть странное поведение от Firefox.

Вот простой пример, который не работает для меня с кнопкой «назад» (т. Е. Никакие события не запускаются, перенаправления не задействованы):

    <!DOCTYPE html>
    <html>
    <head>
    <title>Simplest JQuery</title>
    <script type="text/javascript" src="jquery-1.6.1.min.js"></script>
    <script type="text/javascript">
    $(document).ready(function() {
        alert("document.ready");
    });
    </script>
    </head>
    <body>
    <div>
    Firefox will not fire document ready on back/forward navigation. Except when it 
    does.<br />
    <a href="navigate-nowhere.html">Go!</a>
    </div>
    </body>
    </html>

Firefox определенно показывает некоторые ошибки, так как я получаю различное поведение от одного и того же кода на разных машинах. С современным FF5 он не работает на Windows 7 или Leopard. У меня есть другая машина на Snow Leopard, где она работает так, как написано на жестяной банке.

Проблема также не в JQuery - даже удаление и использование addEventListener не имеет никакого эффекта. Использование встроенного события (т. Е. Через onload в теге body) не имеет никакого эффекта. Задокументированная уловка «пустой выгрузки» здесь также не работает.

И это не проблема с расширениями - я пытался отключить их все. Я попробовал чистую установку на машине Leopard без каких-либо изменений.

Интересно, что событие focus / onfocus работает - если ссылка на странице все еще не выделена. В этом случае событие window.onblur срабатывает впоследствии, но только при использовании табуляции для изменения фокуса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...