拖动时的javascript鼠标悬停

时间:2010-12-21 07:59:05

标签: javascript drag-and-drop

我正在尝试实施一个拖放脚本,并且遇到了一个问题。当你拿一个项目并开始拖动它时 - 该项目就在你的光标正下方,onmouseover事件很少在下面的项目上被触发。但是当我在它们上面拖东西时我想要突出显示其他项目。其中一个解决方案就是不要拖动任何东西 - 这样鼠标事件就会起作用,但那看起来很难看。有没有人做过这样的事情并且知道如何克服这个问题?

如果你正在考虑建议一些JQuery插件或类似的东西 - 请不要。我不需要一个完整的解决方案,这是有教育意义的。

1 个答案:

答案 0 :(得分:2)

IMO,为了让mouseover事件经常被触发,会将mouseover事件绑定到所有受影响元素的parent元素,或者绑定到document {1}}本身,因为事件被冒泡,它们可能是唯一可以触发mouseover事件的元素。

然后,在hit事件中编写mouseover方法并主动检查鼠标光标的位置,看它是否在目标元素的边界下。可用性和性能的权衡。你选择。

我的2点。

或许,您可以对jQuery UI进行逆向工程,以了解它们如何实现拖动元素。没有检查你,但我认为应该有一个更明智的方式。