Tôi có một trang web trong phiên bản dành cho máy tính để bàn, một thanh bên được hiển thị chứa 10 đến 20 hình ảnh nhỏ. Cho đến bây giờ, trên thiết bị di động, thanh bên này chỉ đơn giản là ẩn với một display: none
, là giải pháp ít hiệu quả nhất vì tất cả các hình ảnh sẽ được tải xuống.có điều kiện hiển thị nội dung dựa trên Truy vấn phương tiện
Tôi đang tự hỏi cách tốt nhất là tắt hoàn toàn thanh bên trên thiết bị di động (không sử dụng yêu cầu AJAX riêng).
Giải pháp tốt nhất tôi có thể nghĩ ra như sau:
- Viết mã HTML của sidebar vào một biến
- thử nghiệm JavaScript chiều rộng thiết bị bằng cách kiểm tra một truy vấn phương tiện truyền thông với JavaScript (ví dụ sử dụng
Modernizr.mq
hoặc lâu hơn) - nếu thử nghiệm này mang lại một thiết bị không di động, hãy viết nội dung của biến vào DOM, ví dụ bằng cách sử dụng
innerHTML
,jQuery.append
,jQuery.prepend
hoặc tương tự
Tôi biết rằng hiệu suất RWD đôi khi có thể là một chủ đề rất phức tạp và giải pháp hiệu quả nhất thường không rõ ràng. Vì vậy, bất cứ ai có thể nghĩ ra một giải pháp tốt hơn so với một trong những trình bày ở trên?
Tôi nghĩ rằng đó là một giải pháp tốt đẹp ... bạn có thể sử dụng plugin jQuery.mobile.js để tìm hiểu xem thiết bị có chạm vào trang web trên thiết bị di động hay không bằng một câu lệnh if-line đơn giản. – tymeJV