原文链接:http://blog.csdn.net/lovelyelfpop/article/details/51828515
Sencha ExtJS Modern 和 Touch 中的控件,长按操作触发taphold事件,在手指离开的时候,还会触发一次点击tap事件,类似的还有itemtap和itemtaphold,比如 DataView 或者 List。
如何让长按(taphold/itemtapho)操作完成后不触发点击(tap/itemtap)事件呢?
解决方法:
this.on({
itemtap: 'onTapItem',
itemtaphold: 'onTapHoldItem',
scope: this
});
onTapHoldItem: function(list, index, target, record, e){
list.isTapHold = true; //增加标识:是否长按操作
console.log('itemtaphold');
},
onTapItem: function(list, index, target, record, e){
if (!list.isTapHold) { //有长按标识,则不执行下面的代码
console.log('itemtap');
//这里的代码才是点击事件
}
else {
delete list.isTapHold; //否则清除长按标识
}
}
欢迎加入Sencha Touch + Phonegap交流群
1群:194182999 (满)
2群:419834979
共同学习交流(博主QQ:479858761)