2012-04-10 34 views

Trả lời

28
//target the entire page, and listen for touch events 
$('html, body').on('touchstart touchmove', function(e){ 
    //prevent native touch activity like scrolling 
    e.preventDefault(); 
}); 

nếu có sự kiện liên lạc bị chặn không làm việc cho bạn, bạn luôn có thể đi như thế này:

html, body{ 
    max-width:100%; 
    max-height:100%; 
    overflow:hidden; 
} 
+0

Cảm ơn, mã jQuery của bạn đã hoạt động tốt cho những gì tôi đang cố gắng làm. –

+1

Bạn phải loại bỏ touchstart vì với nó bạn cũng vô hiệu hóa sự kiện "click touch" –

+0

@MarcoMantovani mà không phải là một yêu cầu. – Fresheyeball

5

Tôi sẽ cung cấp một một mảnh mà không sử dụng jQuery như vậy tiếp theo "Javascripter" chỉ có thể copy'n'paste:

var defaultPrevent=function(e){e.preventDefault();} 
document.body.parentElement.addEventListener("touchstart", defaultPrevent); 
document.body.parentElement.addEventListener("touchmove" , defaultPrevent); 
document.body.addEventListener("touchstart", defaultPrevent); 
document.body.addEventListener("touchmove" , defaultPrevent); 
+0

Chỉ cần kiểm tra điều này trên Android. 'defaultPreventDefault()' dường như không tồn tại, nhưng 'preventDefault()' không hoạt động. –

+0

rất nhiều cho mì ống sao chép. Đó là một lỗi đánh máy. Và sửa chữa bây giờ cảm ơn. – CyberFox

Các vấn đề liên quan