我用脚本执行这个函数

$(document).ready(documentReady);

function documentReady(){
      console.log("Ready");
      $(".loadMore").on("click",loadMoreClicked(this.id));
}

function loadMoreClicked(elementID){
//do something with elementID
}

但是,每次加载文档时,它都会立即执行loadMoreClicked函数,从而产生错误。
如果我只想给click事件分配一个函数而不直接执行它,那么我必须删除任何参数。
为什么会这样,我怎么才能避免呢?

最佳答案

只要去掉括号和参数,this就可以在回调中使用

$(".loadMore").on("click", loadMoreClicked);

function loadMoreClicked(){
    var elementID = this.id;
}

09-18 16:50