我想获得长时间的新闻事件。所以我在jquery mobile尝试taohold事件。但是当我添加按钮时它不会打电话。
我喜欢小提琴
<button id="test">Test</button>
$('#test').bind('taphold', function(e) {
alert("jj") ;
e.preventDefault();
return false;
} );
$(function(){
$( "#test" ).bind( "taphold", tapholdHandler );
function tapholdHandler( event ){
alert("jjghfhg") ;
}
});
答案 0 :(得分:1)
你的问题是你没有正确使用jQuery Mobile。要使taphold正常工作,您需要在精确的时刻绑定您的事件。 document ready或$(function(){不能在这里使用。主要是因为它们会在jQuery Mobile重新设计其DOM内容之前很久就会触发。
要了解更多内容,请阅读我的文章 HERE 。
这就是为什么我问你知道jQuery Mobile页面事件是什么。为了使这项工作,您的内容必须是页面div的一部分,甚至必须在pageinit事件之后执行绑定。
工作示例:http://jsfiddle.net/Gajotres/uBtcL/
HTML:
<div data-role="page" id="index">
<button id="test">Test</button>
</div>
Javascript:
$(document).on('pagebeforeshow', '#index', function(){
$('#test').bind('taphold', function(e) {
alert("jj") ;
e.preventDefault();
return false;
} );
});