[英]jquery mobile tap event fires once then causes problems
我有一個綁定到圖像的點擊事件。 點擊圖像時,文檔應滾動。 在使用iOS5的ipad上工作時,第一次點擊圖像時該功能運行良好,但是如果用戶連續第二次點擊圖像,則該功能將失敗。 如果用戶持續點擊,該功能似乎會再次觸發,但無法滾動該功能中定義的整個像素距離。
如果用戶點擊圖像,請觸摸屏幕以物理方式滾動頁面,然后稍后再次點擊圖像,則該功能將按第二次觸發。 為什么我的代碼在第二種情況下有效,但在第一種情況下無效? 非移動版本可以正常工作。
<script type="text/javascript">
$(window).load(function () {
$('#down_button').bind('tap', function() {
$.scrollTo( '+=1024px', {axis: 'y', duration:300} );
});
$('#up_button').bind('tap', function() {
$.scrollTo( '-=1024px', {axis: 'y', duration:300} );
});
});
</script>
您沒有顯示關聯的HTML,所以我猜這些元素之一可能嵌套在另一個元素中。
如果真是這樣,那么tap事件很可能會冒泡。 您可以通過將event.stopPropagation()添加到一個或兩個事件處理程序中來防止這種情況的發生。 這還需要您更改函數以傳遞事件,如下所示:
.bind('tap', function(event) {
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.