您好我使用PhoneGap和JQM为我的Android应用程序提供了以下HTML结构。
<body>
<div data-role="page" id="screen">
</div>
<div data-role="page" id="config" data-theme="a">
</div>
</body>
我在#screen上显示时间计数器,在#config页面显示一些配置。在触摸#screen的任何地方停止计数器并显示#config屏幕。 '#config'点击时有一个'START'按钮,再次显示#screen并启动计数器。
为了解决这个问题,我正在使用
$('#screen').bind('vmousedown', //code to show #config page);
$('#start_cycle').click(function(){
$.mobile.changePage('#screen');
});
我的问题是,如果我触摸#screen某处,会出现#start_cycle,然后抬起我的拇指,执行$('#start_cycle')。点击功能。
似乎我的vmouseup事件正在开始按钮上执行点击事件,而不是等我再次点击它。
我该如何防止这种情况。
答案 0 :(得分:0)
我没有尝试过这个解决方案,只是通过jQM如何工作的理论,
$('#screen').bind('vmousedown', function(e){
e.preventDefault();
//code to change the page to counter page.
return false;
})
jQM表示,v后面是点击事件,在您触摸的同一位置延迟300毫秒。这可能是您在没有手动启动计时器的情况下启动计时器的原因。如果上述方法无效,请尝试使用本机js方法附加触摸事件。