防止在easelJS中触发事件处理程序的最佳方法是什么?在其他项目中,我会使用e.stopPropagation,但这似乎不适用于easelJS。
问题在于我正在使用一个使用easelJS的图书馆并且正在使用#34; pressmove"用于启用拖放的事件处理程序。如果在触发事件时保持修改键(如ctrl或shift),我想阻止此处理程序被触发。在检查是否正在保持修改器之后,理想情况下,如果需要,我将能够触发原始的pressmove处理程序。
答案 0 :(得分:1)
GenState -> Gen [String]
方法可防止事件冒泡而不会被触发。您可以使用stopPropagation
来阻止同一级别的其他侦听器在之后接收事件(行为将取决于事件的顺序)。
理想情况下,如果您有一个想要阻止行为的情况,请在事件处理程序中查找,并有条件地处理该行为。
stopImmediatePropagation
您还可以切换obj.on("pressmove", function(e) {
if (someCondition) {
doSomething();
}
});
以防止对象响应鼠标事件(如果要阻止容器子项上的事件,则可以mouseEnabled
。)
mouseChildren
希望有所帮助。