2016-09-15 1 views
0

У меня есть несколько html-файлов, которые имеют <a href=""> теги, которые идут в другом месте, но поскольку я добавил музыкальный плеер сверху, я начал использовать загрузку jquery, и потому что я ленив, я добавил этот скрипт в jquery загрузить все ссылки. (Этот сценарий не индексный файл и другие файлы имеют только необходимые элементы т.е.. Нет <body> и т.д.)запуск скрипта после загруженного элемента jquery

$("a").live('click', function(){ 
$("#main").load($(this).attr("href")); 
return false; 
}); 

однако он работает только на первой странице, и после того, как содержание меняется с Jquery нагрузкой он не Работа. Если я правильно понял, потому что загрузка произошла после запуска скрипта, но .live должен справиться с этим правом? Я новичок, поэтому может быть что-то, что я неправильно понял.

Или есть ли другие способы узнать, произошла ли загрузка jquery и запустить сценарий еще раз?

ответ

0

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

Еще один намек: используйте функция preventDefault для остановки gefault bahvior от a тегов.

$(document).on("click", "a", function(e) { 
    e.preventDefault(); 
    $("#main").load($(this).attr("href")); 
    return false; 
}); 
Смежные вопросы