[英]Mouse coordinates in Internet Explorer
我有自己的游戲地圖,我有一個腳本,單擊該腳本可在地圖上顯示鼠標坐標的警報。
地圖比例尺是1個地圖單位為2.5像素,地圖從-600,600開始,然后下降到600,1700。因此,我不能簡單地拋出鼠標的像素。
我讓它工作了(對此感到非常高興),但是可惜IE(6)有問題。 我將其范圍縮小到IE無法正確獲取滾動參數。
以下是出現故障的相關代碼,但完整代碼位於http://woarl.com/map/ieMap.html
tempX = event.clientX + document.body.scrollLeft;
tempY = event.clientY + document.body.scrollTop;
謝謝你的幫助
嘗試:
tempX = event.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft);
tempY = event.clientY + (document.documentElement.scrollTop || document.body.scrollTop);
檢查了您的頁面,DOCTYPE將IE置於標准模式,因此所需的scrollXXX
屬性實際上位於document.documentElement
,而不是document.body
。
鼠標坐標的位置非常糟糕,這是因為規范特別指出了它們應該相對於文檔還是相對於視窗。 在http://www.quirksmode.org/js/events_properties.html的底部,有一個很好的問題描述,以及一個適用於所有瀏覽器的腳本示例。
特別是看起來您需要添加document.documentElement.scroll(Left|Top)
以及event和document.body參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.