我写了一个js代码来触发地图区域上的mouseenter和mouseleave。 它适用于Chrome和Firefox,但不适用于Safari,Edge和IE。
我真的不明白为什么。
这是我的javascript:
var areas = document.getElementsByTagName('area');
// set event listener for all objects
for (var i = 0; i < areas.length; i++) {
areas[i].addEventListener('mouseenter', inArea);
areas[i].addEventListener('mouseleave', outArea);
}
// On mouse enter
function inArea() {
console.log('mouseenter');
}
// On mouse leave
function outArea() {
console.log('mouseleave');
}
您可以在此处播放:https://codepen.io/fantomette/pen/pVdLwM
这段代码有什么问题?或许你知道另一种方法吗?
谢谢。
答案 0 :(得分:1)
我更换了#34; mouseenter&#34;和&#34; mouseleave&#34;通过&#34; mouseover&#34;和#34; mouseout&#34;它在每个浏览器中都能正常工作。