Событие не определено в IE6, но отлично работает в Firefox, Chrome и т. Д. - PullRequest
1 голос
/ 05 июля 2010

IE6 становится болезненным, но он все еще составляет (по-видимому) значительную долю доли рынка браузеров, поэтому мне нужно сделать эту работу.

 function getPosition(e)
    {
    e = e || window.event;
    var cursor = {x:0, y:0};
    if (e.pageX || e.pageY)
    {
    cursor.x = e.pageX;
    cursor.y = e.pageY;
    }
else
{
var dex = document.documentElement;
var b = document.body;
cursor.x = e.clientX + (dex.scrollLeft || b.scrollLeft) - (dex.clientLeft || 0);
cursor.y = e.clientY + (dex.scrollTop || b.scrollTop) - (dex.clientTop || 0);
}
return cursor;
}

function outCursor(e){
  var curPos = getPosition(e);
alert(curPos);
}

window.captureEvents(Event.MOUSEMOVE);


    window.onmousemove = outCursor;

IE жалуется на событие вwindow.captureEvents (Event.MOUSEMOVE);

«Событие» не определено.

Ответы [ 2 ]

1 голос
/ 05 июля 2010

Я думаю, что ie6 не поддерживает captureEvents. Так что попробуйте

if (window.captureEvents) {
 window.captureEvents(Event.MOUSEMOVE);
}
0 голосов
/ 05 июля 2010

Попробуйте запустить скрипт без window.captureEvents(Event.MOUSEMOVE);. Я не думаю, что это необходимо. Также, как кто-то упомянул, измените window.onmousemove на document.onmousemove

Также здесь есть хороший ресурс по написанию сценариев такого типа http://www.quirksmode.org/js/events_properties.html#position

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...