嘿!
从4.4.0版本开始,我观察到当我单击pixi画布上精灵上方的DOM元素时。 Sprite的click事件仍然被触发。
我在这里做了一个简单的例子:
v4.4.0
https://jsfiddle.net/ku55deL6/5/
v4.3.5
https://jsfiddle.net/ku55deL6/4/
还要感谢你们的出色工作!
尼斯:)冒险继续!
好的, https://github.com/pixijs/pixi.js/pull/3800应该可以解决导致此问题的另一个问题。
@andrewstart您可以验证您的构建是否正确吗?
是的,它有效。 无论我单击黄色横幅多少次,兔子都保持原状。
在这一点上,我认为您正在将错误潜入代码中以为我工作make
这个周末我将有机会看看。 我知道我们有单元测试来强制不为重叠的精灵获取指针事件,因此我必须深入研究为什么不同的容器会改变这种情况。
我希望😛我的应用程序经常使用这种情况,但不幸的是,这会导致我遇到很多错误。
我已经通过https://d157l7jdn8e5sf.cloudfront.net/fix-interaction-issues/pixi.js解决了这个问题,但是最好使用它来查看我们是否还有其他问题,不知道。
该补丁对我不起作用。
情况如下(移动,Safari):
@hazardsoft我们目前针对以下情况通过了测试:
Stage (both interactive and non-interactive)
/ \
parent1 parent2 (together, both interactive and non-interactive)
/ \
item1 item2 (always interactive)
Stage (both interactive and non-interactive)
/ \
item1 item2 (always interactive)
在测试中, item1
和item2
重叠,其中item1
在item2
之上。 您的设置有何不同? 你能提供小提琴/笔吗?
@andrewstart ,在哪里可以将pixi.js与您的修复一起使用? 因此,我可以针对我的情况进行验证。
抱歉,还没有解决。 对于我在运行之前给出的示例,但在我的应用上仍然可以单击被单击项下的项目。
此刻,我不知道这是发生这种情况的条件。
对我来说一样,我的案子还没有解决。 将尝试准备jsfiddle。
感谢@hazardsoft ,小提琴绝对是我们验证修补程序的最佳方法。
@bigtimebuddy,更多工作,伙计们:)我非常惊讶您正在解决交互问题,这看起来像一场噩梦。
在这里找到它: https :
如果将交互设置为Sprite,则可以正常工作,但是如果将其分配给容器,则行为是错误的,可以同时单击所有项目。
带有mouseup事件的Pixi 4.4.4中的其他一些问题
1- https://jsfiddle.net/8qtz73hf/ (与mousedown一起使用)
2- https://jsfiddle.net/sbxoya8x/ (不适用于mouseup)
看起来像将mouseup侦听器附加到窗口的副作用,以确保如果鼠标不在画布上(或被另一个div阻止),我们可以发送mouseupoutside
事件。 在这种情况下,我想我们必须检查事件的目标,以确保它是画布而不是其他元素。
#3466是同一期吗?
我是否应该为此打开一个新书?
不,您不需要。 我工作很忙,这就是为什么我还没有修复的原因。
该线程已被自动锁定,因为它关闭后没有任何近期活动。 请为相关错误打开新一期。
最有用的评论
我希望😛我的应用程序经常使用这种情况,但不幸的是,这会导致我遇到很多错误。