所以我有一个javascript函数,可以通过标签内的onmouseover调用。这一切似乎都有效,我想通过在html标签中使用onmouseout或一些等价物来阻止它。但我不确定这是不好的做法。 是否可以编写函数来监听mouseout事件而不触及html.Or甚至可以更好地在我当前函数中包含一些代码,以便在鼠标离开时自行终止。 我的HTML看起来像这样:
<a onmouseover="callFunction(id)" ......
我的js功能是:
function callFunction(id){
//does some amazing stuff inside here
}
所以我希望的不是包括
onmouseout="killerFunction()"
在html标签内部,我希望函数能够自己监听这个事件,但更好的是原始函数 - callFunction(id)能够监听这个并保存编写额外的函数
答案 0 :(得分:0)
您可以在HTML之外注册事件处理程序:
document.getElementById("id").onmouseover = function() {
..yada yada
//register another handler here if need be
}
或者
document.getElementById("id").addEventListener("mouseover", function() {
..yada yada
}, false);
答案 1 :(得分:0)
如果您正在使用jQuery,您可以使用.on()
函数收听事件,而无需更改HTML本身:
$('html').on('mouseout', killerFunction);
您也可以为mouseover
事件做类似的事情:
$('a').on('mouseover', callFunction);
答案 2 :(得分:0)
$( "#id" )
.mouseout(function() {
//on mouseout to do
})
.mouseover(function() {
//on mouseover to do
});
jquery这样做的方式..