如何吞噬事件

我在scrollview中加个slider 想在拖动slider的时候 scrollview不响应怎么搞,求大神指点

this.sliderAnte.handle.node.on(‘touchstart’, function(evt) {
evt.stopPropagationImmediate();
});

这个办法还是没用呢

touchstart
touchmove
touchend
touchcancel
都注册上

因为 ScrollView 注册的是 capture 阶段的事件,目前没有提供方法去取消 ScrollView 的事件响应。

你可以手动去取消 ScrollView 的注册事件。

        scrollview.node.off(cc.Node.EventType.TOUCH_START, scrollview._onTouchBegan, scrollview, true);
        scrollview.node.off(cc.Node.EventType.TOUCH_MOVE, scrollview._onTouchMoved, scrollview, true);
        scrollview.node.off(cc.Node.EventType.TOUCH_END, scrollview._onTouchEnded, scrollview, true);

如果你需要加上事件,你可以把 off 改成 on