Tôi đang sử dụng jQuery Mobile và tạo ra cái gì đó hơi giống với Android Holo Tabs:Đang cố gắng để ngăn chặn jQueryMobile swipe cử chỉ từ bọt, nhưng nó không làm việc
Để có được những cử chỉ swipe để làm việc để chuyển đổi giữa các tab, đây là đoạn code tôi đã thêm:
$("#myPage #pageTabs").on('swipeleft swiperight', function(e){
e.stopPropagation();
e.preventDefault();
});
$("#myPage").on('swipeleft', function(){
ui.activities.swipe(1);
}).on('swiperight', function(){
ui.activities.swipe(-1);
});
với HTML tab giống như:
<div id="pageTabs">
<div class="tab">
<a href="#" data-dayOfMonth="26">Thu</a>
</div>
<div class="tab">
<a href="#" data-dayOfMonth="27">Fri</a>
</div>
<div class="tab">
<a href="#" data-dayOfMonth="28" data-meridian="am">Sat AM</a>
</div>
<div class="tab">
<a href="#" data-dayOfMonth="28" data-meridian="pm">Sat PM</a>
</div>
<div class="tab">
<a href="#" data-dayOfMonth="29">Sun</a>
</div>
</div>
Tôi đang nghe cử chỉ vuốt ở cấp trang vì div[data-role=content]
đôi khi không thể lấp đầy màn hình theo chiều dọc, nếu không có đủ nội dung để làm như vậy. Nếu tôi nghe trên div này và nó không bao gồm màn hình, và bạn đã quét gần phía dưới, sự kiện sẽ không cháy trên div này, nó sẽ được trên trang gốc (div[data-role=page]
).
Đây là kết xuất đồ họa 3D của Firefox cho trang đó để minh chứng xác nhận trên. Tôi đã chú thích div[data-role=content]
:
Vì lý do đó, tôi đang nghe cho nó ở cấp độ trang; nhưng vì số lượng tab có thể cuộn ra khỏi khung nhìn (như đã thấy ở trên: Chủ nhật ở bên phải màn hình), tôi muốn người dùng có thể cuộn theo chiều ngang. Tôi đã có cuộn ngang làm việc (đó chỉ là một số CSS đơn giản), nhưng vấn đề là, ngay cả với e.stopPropagation()
của tôi đã thấy ở trên, cử chỉ vuốt là sủi bọt lên đến phần tử trang và cử chỉ vuốt của tôi ngăn cản việc cuộn trơn tru đã có sẵn trước khi tôi thêm cử chỉ vuốt.
Tôi có hiểu lầm về cách hoạt động của sự kiện sôi nổi hay cách dừng hoạt động trong trường hợp này?
'e.target' có thể giúp đỡ? – Omar
Bằng cách nào? Bạn có thể cụ thể hơn không? –
Tôi có nghĩa là bạn lắng nghe phần tử đích nơi sự kiện xảy ra và thực thi mã tương ứng http://fiddle.jshell.net/Palestinian/zbPZh/show/ – Omar