внедрение родительских файлов javascript внутрь дочернего ajax

#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 в настоящее время являются хорошим решением