实时更新HTML / HTA文档中的鼠标位置
我希望能够在HTA窗口中不断更新鼠标位置。
我知道Window.Event仅在调用DOM事件时可用。 所以有一个function,这样做
VBScript中:
Function vbsUpdateMousePos() Dim X,Y, MouseX, MouseY Set MouseX=document.getElementById ("MouseX") Set MouseY=document.getElementById ("MouseY") X=Window.Event.ClientX Y=Window.Event.ClientY MouseX.value=X MouseY.value=y End Function
JScript的:
function jsUpdateMousePos () { var MouseX=document.getElementById ("MouseX"); var MouseY=document.getElementById ("MouseY"); var x=window.event.clientX; var y=window.event.clientY; MouseX.value=x; MouseY.value=y; }
如果我用’OnClick’或’onDblClick’调用任何这些函数,它会工作
但是当我尝试创建一个间隔时。
VBScript中:
setInterval "vbsUpdateMousePos",100
JScript的:
setInterval ("jsUpdateMousePos",100);
因为对象需要“window.event”,因为没有调用DOM事件处理程序。
但我希望能够实时更新位置(有点像你在MSPaint.exe程序中获得的,其中光标位置显示在状态栏中。)
这可能吗?
这里是完整的演示:(注意为了获得最佳效果,请将此片段另存为.HTA文件。)
Mucho Cursor Position Del Hogar Por Favor Function vbsUpdateMousePos() Dim X,Y, MouseX,MouseY Set MouseX=document.getElementById ("MouseX") Set MouseY=document.getElementById ("MouseY") X=Window.Event.ClientX Y=Window.Event.ClientY MouseX.value=X MouseY.value=y End Function Sub vbsStartInterval 'Error Occurs when Trying this setInterval "vbsUpdateMousePos",100 End Sub function jsUpdateMousePos () { var MouseX=document.getElementById ("MouseX"); var MouseY=document.getElementById ("MouseY"); var x=window.event.clientX; var y=window.event.clientY; MouseX.value=x; MouseY.value=y; } function jsStartInterval (){ //Error Occurs when trying this setInterval ("jsUpdateMousePos",100); } Click anywhere in this window to test JavaScript Update Cursor position
Double Click anywhere in this window to test VBScript Update Cursor Position Mouse X: Mouse Y:
通过简单的mousemove
函数调用,这是非常可能的。 这在.hta文件中工作得很好。
X: Y: