2013-11-24 3 views
0

У меня есть тема из коробки, которая отлично работает с использованием событий jquery для запуска определенных эффектов как в заголовке, так и в боковой части страницы.javascript не работает над элементами html из включенного html-файла

Поскольку есть много страниц, я попытался взять эти заголовки, боковую панель и нижние колонтитулы секцию и перенесите код во внешние файлы, которые включены в следующем яваскрипте стратегии:

<html> 
    <head> 
    <script src="jquery.js"></script> 
    <script> 
    $(function{ 
     $("#includedContent").load("b.html"); 
    }); 
    </script> 
    </head> 

    <body> 
    <div id="includedContent"></div> 
    </body> 
</html> 

Проблема заключается в том, что когда коды заголовка и боковой панели включены с использованием javascript, события jquery перестают работать. Есть ли лучший способ включить внешний файл, чтобы javascripts, вызываемый в родительском файле, затронул все элементы дочерних файлов? Или, что-то еще, что я могу сделать?

+1

Использование http://api.jquery.com/on/ для регистрации событий для статических и динамически добавленных HTML элементов. – andrewb

+0

FYI синтаксис сокращенного документа документа - '$ (function() {...});', а не '$ (function {...});' – j08691

+0

Если вы предоставите свой код. Это поможет понять вашу реальную проблему. –

ответ

1

Вы можете использовать метод .on() или .live() для связывания динамически добавленного элемента.

Jquery .on() метод динамически добавленного элемента - См live() метод http://api.jquery.com/on/#direct-and-delegated-events

Использовать JQuery в. Описание: Прикрепите обработчик событий для всех элементов, которые соответствуют текущему селектору, сейчас и в будущем.

Try in Jsfiddle

Смежные вопросы