鼠标退出事件在IE 8中不会触发

问题描述 投票:0回答:2

我有一个尾随在鼠标后面的对象,当鼠标离开窗口时,我想把它隐藏起来,这在其他浏览器中也可以。但在IE8中却没有触发该事件。 >.<

如果能触发就好了,那估计就可以正常使用了。

function mouseport(e){
    //alert('event triggered');
    if (document.all)  { //IF IE
        mouseX = event.clientX;
        mouseY = event.clientY;
    } else    {
        mouseX = (window.Event) ? e.clientX : event.clientX;
        mouseY = (window.Event) ? e.clientX : event.clientY;
    }
        if ((mouseY > 0 && mouseY < window.innerHeight)
        && (mouseX > 0 && mouseX < window.innerWidth)){
            return false;
        }else{
            if (follow) hidett()    //that's my hide function
        }
    }

// for IE compatability
if (!window.addEventListener) {
    window.attachEvent("mouseout", mouseport);
}
else {
    window.addEventListener("mouseout", mouseport, false);
}

if (window.Event) {
            if (window.captureEvents) { //doesn't run if IE
                document.captureEvents(Event.MOUSEOUT);
            }
        }

请大家帮忙找找我哪里做错了,它没有触发......

javascript events event-handling internet-explorer-8 dom-events
2个回答
1
投票
window.attachEvent("mouseout", mouseport);

应该是

document.attachEvent("onmouseout", mouseport);

http:/msdn.microsoft.comen-uslibraryiems536343(v=vs.85).aspx。


0
投票

试着加上这个

<meta http-equiv="X-UA-Compatible" content="IE=7" />

注意:已知它会导致某些滚动条的问题。

© www.soinside.com 2019 - 2024. All rights reserved.