2010-02-12 58 views

回答

3

簡短的回答:沒有

長的答案:是的。 onload事件不提供有關鼠標位置的信息,但是您可以在onload觸發時設置變量,並且在文檔加載後鼠標移動後立即使用文檔上的onmousemove事件來獲取鼠標位置(在變量之後已經設置好了)。不是你想要的,但是。

+0

不認爲這是可能的,但我想也許有人知道一個黑客。感謝您的驗證。 – gatapia

+0

爲什麼這些信息不公開?在onfocus事件中獲取鼠標信息也很好。 – nornagon

+0

@nornagon,可能是因爲它不是特別相關。還有其他方法可以將元素進行聚焦(例如,使用製表鍵或觸摸屏)。鼠標數據僅適用於鼠標相關事件,如onmousemove或onmouseover。也就是說,你可以聽onclick事件的焦點(但onclick不保證焦點)。更好的是,使用這兩個事件處理程序並使用臨時的,特定於元素的存儲機制(如html5數據)來跟蹤事件。 –

1

你可以嘗試這樣的:

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title></title> 
<script type="text/javascript"> 
function SetValues() { 
    var IE = document.all?true:false; 
    if (!IE) document.captureEvents(Event.MOUSEMOVE) 
    getMouseXY(); 
    var mX = 0; 
    var mY = 0; 
    function getMouseXY(e) { 
    if (IE) { 
     mX = event.clientX + document.body.scrollLeft; 
     mY = event.clientY + document.body.scrollTop; 
    } 
    else { 
     mX = e.pageX; 
     mY = e.pageY; 
    } 

    var s = 'X=' + mX + ' Y=' + mY ; 
    document.getElementById('divCoord').innerHTML = s; 
    return true; 
    } 
} 
</script></head> 
<body onload=SetValues()> 
<div id="divCoord"></div> 
</body></html>