我这样做:
return this.each(function(){
$.this.load('searchInterface.html',function(){
console.log('load');
//a lot of code
});
$('#more_button').bind('click',more());
function more(){
console.log('more');
}
});
我的控制台显示:
更多
负载
这意味着在.load()内部的某个地方点击了我的按钮。 我该如何避免这种行为?
谢谢!
答案 0 :(得分:4)
在更多行上方声明$('#more_button')。bind('click',more());并删除括号。
您应该引用该函数,而不是调用它。
$('#more_button').bind('click',more);
答案 1 :(得分:2)
你正在调用更多功能。使用:
function more(){
console.log('more');
}
$('#more_button').bind('click',more);
答案 2 :(得分:0)
通过包括括号,您调用的是more()函数,而不是将引用传递给id。
改为使用
$('#more_button').bind('click',more);