Я пытаюсь выполнить загрузку jquery html-страницы в основную часть страницы.
Используя div с именем sidebar_menu, который находится посередине страницы, я выполняю загрузку jquery в конце (внизу) страницы.
$("#sidebar_menu").load("/sitemenu.html");
$("#sidebar_menu").page();
Этот вид работает... содержимое отображается, но в меню нет функции javascript (развернуть, свернуть и т.д.), Применяемой к ней. Стили были применены, но функциональность меню не существует.
Я могу скопировать содержимое html вместо div и работать в меню.
Я загружаю включенный файл слишком поздно в стеке? в настоящее время
jQuery(document).ready(function(){
$("#sidebar_menu").load("/sitemenu.html");
$("#sidebar_menu").page();
});
но есть лучшая область для загрузки html файла в DOM, поскольку.ready, кажется, слишком поздно в стеке сборки страницы, чтобы быть работоспособным.
Спасибо
Существует много методов JQuery, которые разделяют Javascript. Я усвоил это с трудом. Посмотрите на это. Возможно, это не проблема, которую вы угадываете. Путь вокруг него состоит в том, чтобы не получить JS, сгенерированный на стороне сервера, а иметь на стороне клиента значения параметра, config и т.д., Переданные как некоторые значения элементов DATA- со стороны сервера для некоторых элементов HTML. Строка, которую вы назначаете для DATA-, также может быть строкой JSON.
Вы должны использовать JQuery.На() метод см http://api.jquery.com/on/
Я не уверен, как выглядит ваш код. Но вот идея. Возьмите ближайший контейнер (который существует в DOM) элемента, который будет загружен (а не в DOM в этот момент), и на этом селекторе asign и действии для загружаемых элементов.