2013-06-21 34 views
18

Chỉ có thể chạy một số tập lệnh jQuery nhất định nếu kích thước màn hình/thiết bị có chiều rộng trên xxx pixel không?jQuery - Thực thi các tập lệnh dựa trên kích thước màn hình

Vì vậy, ví dụ: tôi chỉ muốn chạy trình chiếu khi mọi người đang xem trang web trên các thiết bị lớn hơn 1024px. Nếu ai đó truy cập vào điện thoại di động Tôi chỉ muốn tất cả các hình ảnh để hiển thị xếp chồng lên nhau ...

+0

Yes. Kiểm tra chiều rộng màn hình sau đó gọi hàm bạn cần. –

+0

Nếu bạn không quan tâm đến js của bạn tải trình chiếu trên kích thước màn hình nhỏ hơn, bạn cũng có thể ẩn trình chiếu bằng cách sử dụng truy vấn phương tiện css ở kích thước trình duyệt nhỏ hơn 1024. Một điều cần lưu ý là chiều rộng cửa sổ js khác với chiều rộng cửa sổ truy vấn phương tiện css trong một số trình duyệt. Đảm bảo bạn có chức năng thay đổi kích thước để xử lý hành vi thay đổi kích thước – Huangism

Trả lời

48

Bạn có thể sử dụng $(window).width()

if($(window).width() >= 1024){ 
    // do your stuff 
} 

Demo --->http://jsfiddle.net/fh2eC/1/

+0

@MohammadAdli Điều này có khả năng làm giảm kích thước của tệp tập lệnh trên điện thoại di động hay không? – realph

18

Nếu bạn muốn kiểm tra kích thước chiều rộng sau khi cửa sổ được thay đổi kích thước thì:

$(window).resize(function() { 
    if($(this).width() > width) { 
     // code 
    } 
}); 
+0

Tôi đã thử kết hợp với tập lệnh để đặt chiều cao bằng nhau trên các vùng chứa khác nhau trên trang. '$ (window) .resize (function() { if ($ (this) .width()> '480') { equalheight 'divContainerName.'();} });' nhưng nó không hoạt động. bất kỳ lời khuyên nào? (xin lỗi vì nhiều lần gửi, có một số vấn đề về bàn phím!) –

+1

làm cho nó hoạt động bằng cách xóa dấu ngoặc kép xung quanh chiều rộng và xóa px –

-2

Bạn có thể sử dụng một chức năng sau đó thiết lập một khoảng thời gian cho nó để kiểm tra kích thước mỗi 10 nhà máy ....... đây ....

function change(){ 
document.getElementById("p").innerHTML = window.innerWidth; 
} 

setInterval(change, 10); 
Các vấn đề liên quan