2016-09-15 86 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功能可以阻止a标签的默认行为。

$(document).on("click", "a", function(e) { 
    e.preventDefault(); 
    $("#main").load($(this).attr("href")); 
    return false; 
});