我对仅在 Linux 上使用 kineticjs 的事件 CLICK 有一个严重的问题。很好,我还没有尝试使用 Windows,但在 MacOSX 上没有出现问题。
我创建了一些组,如果我简单地单击组(显示/隐藏组本身的组件)或者是不显示组件的拖动事件,我必须评估单独的操作。
这个问题很容易解决:在每次 mousedown 时设置一个标志变量,并通过 dragstart、dragmove、dragend 事件设置为 off。然后在 mouseup 上,旗帜告诉我我必须做什么。
常规的。但是......在(我爱的)Linux 上,当我进行事件(鼠标按下或单击)时,组向右移动 1 像素,向下移动 1 像素。
所以每次都会触发拖动事件。
好吧,我设置了一个控件:在 mousedown 上,我使用 getPosition() 并存储 posX 和 posY,在 mouseup 事件上,我比较新位置,如果相等或新位置正好是 1 px 左和 1 px 向下,我忽略标志并充当点击。
但是,我单击事件的第一次(仅是第一次)被触发但它没有响应。我试过更换浏览器,但每次都得到相同的结果。
谁能告诉我是否有办法解决它?