由于JQuery是生活中所有内容的解决方案,因此在点击具有某个类的链接后,我使用它来加载具有.load()
功能的页面,请参阅下面的代码:
$('.pageloader').click(function(){
$('.content').load("pages/" + this.name);
});
然而,每次点击后,这会加载两倍的页面数量(第一次为1次,之后为2次,4次,8次,16次等)。
我试过关闭所有其他代码,但它没有改变任何东西。
使用console.log我注意到它只执行一次.click()
函数,并且正在执行多次.load()
。
有人知道是什么原因造成这种情况吗?
答案 0 :(得分:1)
您可能几次点击事件...
在.click
:
$('.pageloader').unbind('click').off('click');
$('.pageloader').click(function(){ $('.content').empty().load("pages/" + this.name); });
[编辑]
问题出在加载的页面中。
答案 1 :(得分:1)
尝试一次:
$('.pageloader').click(function () {
// Cache this here
var $this = $(this);
// Removes all child nodes (including text nodes) from content class
$('.content').empty().load("pages/" + $this.attr('name'));
});