大家好,我有以下脚本,当我移动鼠标时,它会给出光标位置。 这个脚本在 chrome、FF 甚至 IE 8 中都可以正常工作(没有 !doctype html)
如果将 !DOCTYPE html 添加到 html 页面。 它给我对象不支持此属性错误。并且下面给定的行导致了问题
document.captureEvents(Event.MOUSEMOVE);
如何使用 IE 8 中包含的 !DOCTYPE html 解决此问题。
window.onload = init;
function init() {
if (window.Event) {
document.captureEvents(Event.MOUSEMOVE);
}
document.onmousemove = getCursorXY;
}
function getCursorXY(e) {
document.getElementById('cursorX').value = (window.Event) ? e.pageX :
event.clientX + (document.documentElement.scrollLeft ?
document.documentElement.scrollLeft : document.body.scrollLeft);
document.getElementById('cursorY').value = (window.Event) ? e.pageY : event.clientY
+ (document.documentElement.scrollTop ? document.documentElement.scrollTop :
document.body.scrollTop);
}
最佳答案
我假设您收到错误是因为 <!DOCTYPE html>
是针对 HTML5 的声明,IE 8 将无法处理 HTML5。
您是否考虑过改用 jQuery?它将具有实现相同目标所需的所有功能。
关于javascript - 如果我添加 <!DOCTYPE html>,pageX pageY 在 IE8 中不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20272820/