我想使用jquery委托来调用一个函数,这很好用:
$("body").delegate("div", "mouseover", function(){
alert("it works");
});
但我也希望能够在其他地方使用相同的功能。因此,不是多次编写相同的函数,我可以单独声明它,并按名称调用它,对吧?
但是这样写,我从来没有看到警报。
function alertMe(){
alert("it works");
};
$("body").delegate("div", "mouseover", alertMe());
答案 0 :(得分:1)
在定义委托时删除parenthisis。只需给出函数名称
$("body").delegate("div", "mouseover", alertMe);
答案 1 :(得分:1)
jQuery .delegate
已被.on方法取代。我建议你改变你的代码来使用它。
function alertMe(){
alert("it works");
}
$("body").on("mouseover", "div", alertMe);
//$("body").delegate("div", "mouseover", alertMe) -- old method
//Note the change in postion of selector and event
答案 2 :(得分:0)
最好这样做:
$("body").delegate("div", "mouseover", function(){
alertMe();
//plug more code down here
});
它有优势,主要是:
alertMe()
)答案 3 :(得分:0)
创建公共事件处理程序很简单
function alertMe(event){
//you also need to include the event object, for various actions like stopPropagation()
alert("it works");
};
$("body").delegate("div", "mouseover", alertMe);