gpt4 book ai didi

javascript - Firefox 中的 Event.target 问题

转载 作者:太空宇宙 更新时间:2023-11-04 13:26:49 24 4
gpt4 key购买 nike

我在 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 时绑定(bind),并在他们再次释放鼠标按钮时解除绑定(bind)。

在 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 .也许您可以重新调整元素,以便将元素设置在触发事件的元素之上以拥有事件。

关于javascript - Firefox 中的 Event.target 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4233735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com