我正在尝试在IE8中的链接中模拟mousemove
事件,但我不确定是否可以在事件中设置鼠标的坐标。到目前为止,这是我的代码:
function Handler()
{
var dump = "";
for(var i in event)
{
dump += ("" + i) + " => " + event[i] + "\n";
}
dumper.value = "";
dumper.value = dump;
}
function Init()
{
document.getElementById("link2").attachEvent("onmousemove", function(){Handler();});
}
function Emulate()
{
var evt = document.createEventObject();
evt.x = 10;
evt.y = 10;
document.getElementById("link2").fireEvent("onmousemove", evt);
}
通过调用Init()
函数onload
来附加事件。当我调用Emulate()
时,坐标是光标的实际坐标。我做错了什么或者这是不可能的?
答案 0 :(得分:0)
好的,我刚刚编辑了我的问题以反映我原来的失败代码(我发布的那个代码搞砸了)。解决方案是设置clientX
和clientY
。 x
和y
会自动获取分配给它们的值:
function Emulate()
{
var evt = document.createEventObject();
evt.clientX = 10;
evt.clientY = 10;
document.getElementById("link2").fireEvent("onmousemove", evt);
}