[英]JQuery “tap” event fires twice
我對JQuery移動“tap”事件有一個真正的問題。 它發射兩次,我似乎無法阻止它。
問題是,我有一個頁面index.html當你點擊按鈕時,你轉到page2.html。 問題是當你進行快速瀏覽時,你將轉移到page2.html,然后它將再次點擊該頁面,這會導致嚴重的問題。 無論如何我能解決這個問題嗎? 我試過返回false; 但它不起作用。 這是我使用的代碼:
$("#read").on('tap',function()
{
$.mobile.changePage('pages/reader/reader.html');
return false;
});
更新:在進行大量測試之后,它似乎不是被觸發兩次的事件。 看起來額外的點擊是SOMETIMES跟隨到另一頁,所以下一頁上的其他按鈕被點擊。 這是一個嚴重的問題,我不能像這樣發布它。
任何人都有想法為什么JQuery mobile會以這種糟糕的方式表現?
我沒有很多jquerymobile的經驗,但這可能是eventPropagation的原因,停止事件傳播到它的父親可能會有所幫助。
嘗試這個:
$("#read").on('tap',function(e)
{
$.mobile.changePage('pages/reader/reader.html');
e.stopPropagation();
return false;
});
嘗試:
$("#read").on('tap',function()
{
var $this = $(this);
if (!$this.hasClass("tapped")) {
$this.addClass("tapped");
$.mobile.changePage('pages/reader/reader.html');
}
});
如果您需要重新啟用該按鈕,只需刪除Class(“tapped”),就像您可能知道的那樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.