我正在尝试将所有较旧的代码转换为使用箭头功能...
以下作品:
$p_worklist.mouseover (()=> {
closemenues();
console.log ("Show Worklist");
$div_worklistmenu.show();
});
但是,这不是
$p_worklist.mouseover =()=> {
closemenues();
console.log ("Show Worklist");
$div_worklistmenu.show();
};
区别在于,第一个函数将主体包裹在括号中,而第二个函数不但将第一个括号替换为等号,然后删除了第二个。
尝试学习...
谢谢
最佳答案
问题不是箭头功能,而是您使用mouseover
属性设置事件监听器的问题。
在JQuery中(假设您正在使用$
,我假设您正在使用),mouseover
是一个将另一个函数作为参数的函数。因此,您将完全像您一样传递匿名箭头功能。
但是,在原始JavaScript中,mouseover
属性是指向要作为事件侦听器调用的函数的指针。
如果您使用的是JQ:
$('selector').mouseover(() => {
// ...
});
如果您使用的是JS:
element.mouseover = event => {
// ...
}
当然,您可以使用setter自己重写JQuery方法,但这可能不是您想要的。
关于javascript - 了解箭头功能-为什么这行不通呢?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59011657/