我们正在做一个自举式iPhone演示,并且比Ext更多的jQuery人员,因此与Sencha Touch有关事件和语法的一些问题。
我将一个itemswipe事件附加到一个列表项,当它被刷过时,它会执行所要求的任务,但它也会在您滑动时垂直查看列表。我宁愿没有。
我可以在下面添加“停止滚动”参数吗?如果我错过了显而易见的事情 - 在文档和截止日期之间,可能就是这种情况。
$itemswipe: function (list, index, element, event) {
if (event.direction =="right") {
//tasks
});
}
},
谢谢!
答案 0 :(得分:3)
我让它像这样工作:
var thisController = this;
this.control({
'.myList' : {
itemswipe : function(dataView, index, target, e, eOpts) {
console
.log('myList itemSwipe '
+ index);
thisController.getMyList().setScrollable(false);
}
}
});
这都是在控制器的init函数中定义的。我保存了对控制器的引用,因为有时它超出了事件处理程序的范围。这样您就可以引用控制器了。我还将'myList'定义为ref:
{
ref : 'myList',
selector : '.myList'
}
这至少会阻止你的列表滚动。当您完成检测到项目滑动时要执行的任何操作时,您可以延迟重新启用它(将其设置为true)。这适用于Sencha Touch 2.如果您需要更多信息,请告诉我们!