Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.2.14的touch.off无效 #9

Open
RelicOfTesla opened this issue Jun 8, 2015 · 15 comments
Open

v0.2.14的touch.off无效 #9

RelicOfTesla opened this issue Jun 8, 2015 · 15 comments

Comments

@RelicOfTesla
Copy link

抛出异常,this.proxies undefined

@xiaobc1234
Copy link

我也遇到这个问题,touch.off()报错,Uncaught TypeError: Cannot read property 'tap' of undefined。不知道你解决了没有!

@xiaobc1234
Copy link

知道原因了,如果某个dom没有绑定事件就直接使用touch.off(),就会报上面的错误。加上try{}catch(e){}就行了。

@RelicOfTesla
Copy link
Author

@xiaobc1234 明显不是一回事。

@xiaobc1234
Copy link

@RelicOfTesla 额,好像off()确实没有解除绑定。

@newbeea
Copy link

newbeea commented Jul 14, 2015

如果不加handler无法解除绑定,如果加了就报错this.proxies undefined

@qianniuc
Copy link

今天也发现了这个bug,真是日了狗了

@MichaelGong
Copy link

这个问题怎么解决啊 有没有解决方法?

@MichaelGong
Copy link

暂时只想到一个最笨的方法 ,不调用touch.off()方法,而是删除之前的在touch.on上绑定的元素,然后重新建一个一模一样的元素

@qianniuc
Copy link

看来是没人维护了,其实这个项目挺好,就滑动来说,比较灵敏,兼容性也比较好,但这个事件不能解绑是个致命的bug,还是希望官方的人员来维护这个库吧,下面附上 修复事件解绑无效的bug

@qianniuc
Copy link

@MichaelGong 希望能帮到你

@liy-cn
Copy link

liy-cn commented Dec 7, 2015

还有一个办法:看我下面的绑定和解绑的代码 @MichaelGong @luocong123

绑定,注意第三个参数,必须要写,否则解绑的代码就报错,

touch.on('#page2', 'touchstart', '', page2TouchStart);
touch.on('#page2', 'drag', '', page2Drag);
touch.on('#page2', 'dragend','', page2DragEnd);

解绑,指定elment和事件后,就不能加其他参数了,否则报错

touch.off('#page2', 'touchstart');
touch.off('#page2', 'drag');
touch.off('#page2', 'dragend');

@jiayouzl
Copy link

我去忙活半天原来off是Bug....我去!~
@crystalcool 也无法解绑,并且用你的方法假如是循环渲染的数据只有第一条有效~

@hasbug
Copy link

hasbug commented Jan 26, 2016

同遇到,没有维护了吗?

@jingzhiMo
Copy link

的确是off()函数的bug,在275行左右的unbind函数;好像是因为this指向的问题?在forEach循环里面:

el.removeEventListener(evt, this.proxies[this.proxyid], false);

this的指向有问题,在回调函数里面,this 不能指向到 engine 对象?

@qianniuc
Copy link

qianniuc commented Mar 8, 2016

@jingzhiMo 确实是这个问题,我做了简单修复,请看这个解绑失效修复 具体代码

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants