Javascript 使用命名函数设置多个事件响应
我试图改变这一点:Javascript 使用命名函数设置多个事件响应,javascript,jquery,html,dom,scripting,Javascript,Jquery,Html,Dom,Scripting,我试图改变这一点: $( "p" ).on({ "click": function() { console.log( "clicked!" ); }, "mouseover": function() { console.log( "hovered!" ); } }); 看起来像这样: $( "p" ).on({ "click": fnOne(); }, "mouseover": fnTwo(); } }); function fnOne(){ ale
$( "p" ).on({
"click": function() { console.log( "clicked!" ); },
"mouseover": function() { console.log( "hovered!" ); }
});
看起来像这样:
$( "p" ).on({
"click": fnOne(); },
"mouseover": fnTwo(); }
});
function fnOne(){
alert("click");
}
function fnTwo(){
alert("click");
}
实现这一点的正确方法是什么?您需要将函数引用作为值传递给事件名称属性
$("p").on({
"click": fnOne,
"mouseover": fnTwo
});
在您的代码中,存在语法问题,您试图做的也是调用这些函数,并将这些函数返回的值作为未定义的事件处理程序传递。谢谢。我会在几分钟内把你的帖子标记为答案。顺便说一句,例如,我想在
单击事件时调用fnOne
和fnTwo
“click”:fnOne,fnTwo“mouseover”:fnTwo
当然不正确。什么是正确的?@Arbaaz您可以创建另一个函数来调用这两个函数。。还有一个问题。我可以在您给出的第二个示例中关闭事件侦听器,但让我们假设在某个时候我不想在这个示例中列出FN2,这可能吗?