任何熟悉zepto的人吗?
如果他们有良好的doubleTap植入并且他们能够处理这项工作,我也会接受其他移动框架的建议。
我需要在移动Safari中第二次点击doubleTap事件时检测坐标。
到目前为止,我一直在使用 jQuery 作为event-obj并且语法很好
x: e.pageX
y: e.pageY
但它在iPad中不起作用
感谢任何帮助,BR
答案 0 :(得分:1)
我不知道这是否可以在Zepto上工作(我在JQMobi上遇到同样的问题)但是如果你使用HammerJS http://eightmedia.github.com/hammer.js/而不是你可以获得点击的实际位置
请参阅我的SoftPaws游戏中的示例:https://github.com/gavD/soft-paws
我希望这有帮助!
答案 1 :(得分:1)
正如我所提到的,我找到了一个解决方案,所以如果其他用户面临同样的问题我会发布它:
// double tap (tapped twice within 250ms)
if (touch.isDoubleTap) {
touch.el.trigger('doubleTap')
touch = {}
zepto.js中的上述代码检测到touch事件是doubleTap并触发其处理程序。这里有一点修改:
// double tap (tapped twice within 250ms)
...............
touch.el.trigger('doubleTap', {touch: touch})
通过传递事件作为参数来覆盖它来解决问题。现在可以访问事件对象及其所有属性,包括坐标。
以下是如何从定义的处理程序中提取它们的示例:
Zepto('selector').doubleTap(function(e){
var dblTap = e.data.touch;
var coord = {
x: dblTap.x1,
y: dblTap.y1
}
});
这对 v1.0.rc1 有效。不知道将来的版本会是什么情况