#php #javascript #ajax
#php #javascript #ajax
Вопрос:
история: Я часто использую ajax внутри определенного проекта, я создаю плавающие разделы и заполняю их различным контентом с помощью ajax (аналогично тому, как facebook работает при использовании всплывающих окон).
Проблема, с которой я сталкиваюсь, заключается в том, что при получении страницы ajax мне нужно повторно включить весь javascript внутри этой страницы, чтобы функции javascript работали должным образом.
Короче говоря, когда я выводю содержимое ajax, я снова делаю <script src='..
то же самое
Большая проблема заключается в том, что это замедляет работу приложения, поскольку существуют дополнительные вызовы для файлов javascript, которые уже включены в родительское окно.
Как вы справляетесь с этой проблемой? Спасибо!
Комментарии:
1.
when getting an ajax page I need to reinclude all javascript
загружаете ли вы код javascript с помощью ajax?2. вопрос неясен . Если вы создаете всплывающие окна, подобные divs (как facebook, я думаю (? не уверен, я не использую fb)) , не будет необходимости повторно включать уже загруженные файлы js. Если вы используете новые всплывающие окна, то файлы должны быть повторно включены.
3. Вы на самом деле используете iFrames вместо AJAX?
Ответ №1:
при получении страницы ajax мне нужно повторно включить весь javascript внутри этой страницы, чтобы функции javascript работали должным образом…
Как вы справляетесь с этой проблемой?
В чем проблема? Если вы имеете в виду обработчики, которые вы прикрепили к событиям динамически добавляемых объектов, то, в случае использования jquery, лучшим выбором будет плагин livequery.
Комментарии:
1. спасибо за ответы, мне было неясно. Допустим, у меня есть вызов ajax, который получает страницу внутри div. Эта страница, загруженная с помощью ajax, содержит множество элементов, которые также используют javascript / ajax. Чтобы хорошо работать внутри страницы, запрошенной ajax, я снова включаю все файлы javascript из родительского. Есть ли способ не запрашивать одни и те же файлы javascript дважды? Я не могу использовать live from jquery, потому что нет простых событий привязки, но я использую другие плагины jquery, например.
2. Я привожу более простой пример: допустим, вы используете плагин jquery, подобный любой карусели. Если вы загружаете страницу с помощью ajax, которая использует плагин jquery, она не будет работать должным образом без повторного включения всех файлов javascript… Что я могу сделать, чтобы прекратить повторный запрос файлов javascript?
3. Блок кода с вашей проблемой рассказал бы гораздо больше, чем любое описание. Действительно, я все еще не понимаю, в чем проблема. Можете ли вы привести пример? Я бы с радостью помог.
4. Это был старый вопрос, который был недостаточно ясен. Подход, который я использовал для динамического внедрения javascript, отличается, но, конечно, обработчики включения-выключения jquery в настоящее время являются хорошим решением