[英]Event.target issue in firefox
我在html / javascript中創建自己的拖放腳本作為我網站的一部分。 這一切都很好,除非我在firefox中嘗試它。 我做了一些調試,發現firefox從event.target返回錯誤的目標。
這是代碼的重要部分,
$(document).bind({
'mousemove' : function(e){
console.log(e);
+更多代碼+
var obj = e.target;
if(obj.className == "sidebarItem"){
dt.root.handleHover(e.target);
}else if(obj.className == "sidebarItemText"){
dt.root.handleHover(e.target.parentNode);
}
(我只是在這里鍵入了這段代碼,所以可能會有一些語法錯誤,但是你們知道它是如何工作的)
當用戶點擊“可拖動”的div時,此代碼會被綁定,並在再次釋放鼠標按鈕時立即解除綁定。
所有在IE和Chrome中運行良好,它給出了正確的div在哪里懸停,但在firefox event.target返回一個甚至不靠近鼠標的div(它實際捕獲了第一次點擊后面的div后面的div ,它設置有相對位置)。
情況就是這樣
----------
|a | bbbb
|a | bbbb
|a | bbbb
a =拖動目標
b =拖動它的位置,以及firefox返回的div
誰知道我在這里做錯了什么?
編輯:
我發現總是作為event.target返回的div由於overflow-y:auto而表現得很奇怪; 當我關閉它它工作正常但溢出必須在那里..仍然沒有線索如何解決這個問題:<
event.target將其返回到調度事件的目標。 請查看更多https://developer.mozilla.org/en/DOM/EventTarget 。 也許你可以重新調整元素,以便將元素設置在觸發事件的元素上方以獲得事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.