Обходной путь для событий jQuery, не запускаемых в Internet Explorer, если не найдены ВСЕ элементы - PullRequest
0 голосов
/ 16 мая 2011

Я пытаюсь найти лучшее решение этой проблемы.У меня есть игра, которую я разрабатываю на PHP, и в ней много разных страниц контента.Эти страницы содержимого содержат все внутри тела документа.Я использую события jQuery click для вызова моего AJAX, который загружает внешний PHP и обновляет игру.Однако на многих страницах у меня есть разные элементы, которые я вызываю с помощью моего селектора jQuery.Я хотел бы иметь только один файл javascript для управления всеми событиями jQuery, но в соответствии с комментарием, размещенным на сайте jQuery;

* "Примечание для IE. Если вы попытаетесь назначить живой обработчик события для несуществующего элемента, то любые другие обработчики живых событий не будут работать, вы также не получите никаких ошибок."
http://api.jquery.com/live/

К сожалению, большая часть моей базы игроков все еще использует IE 6-8.Из-за этого в моем файле нижнего колонтитула я вызываю много разных файлов JavaScript.Я надеялся, что кто-нибудь подскажет мне, как лучше обойти это, поскольку в моей игре много разных страниц, и я не хочу, чтобы в моем нижнем колонтитуле вызывалось много файлов JavaScript.было то, что я мог включить файл javascript из тегов , это было бы другое решение (но я из того, что я исследовал, не думаю, что это возможно).

Спасибо.

1 Ответ

0 голосов
/ 16 мая 2011

Попробуйте использовать делегат () вместо live ()

делегат похож на live, но вместо распространения события обратно в document.root вы можете указать корневой элемент, в котором будет обрабатываться событие.

...