我有这个
<a href="A.html" data-ajax="false" class="btn">A</a>
<a href="B.html" data-ajax="false">B</a>
<script>
$('a, button').bind('touchstart', function(e) {
$(this).trigger('click');
e.preventDefault();
});
</script>
代码在phonegap + jquery mobile上编译并在Nexus S上进行测试。
我的问题是,当我触及A和B时,我没有看到性能提升,发生了什么?
请帮忙!
答案 0 :(得分:0)
您无需在标签上绑定touchstart。可以在按钮上使用它。使用touchstart事件触发元素没有任何意义,touchstart是用于替换移动设备上的点击事件的事件。但是在Android用户点击事件的情况下获得更好的性能。 Touchstart用于在iPhone / iPad设备上执行的JQM。
这是我用来确定点击事件类型的代码:
var userAgent = navigator.userAgent;
touchEvent = (userAgent.match(/iPad|iPhone/i)) ? "touchstart" : "tap";
无论您选择哪种活动,移动设备上的移动设备都将达到300毫秒。一些插件声称他们可以解决这个问题,但我从未找到过成功的问题。
我希望这会对你有所帮助。