2010-03-09 44 views
7

Có cách nào để kiểm tra xem javascript có được kích hoạt hay không để đảm bảo ứng dụng yêu cầu javascript không được khởi tạo khi bị vô hiệu hóa hoặc không khả dụng?Kiểm tra xem javascript có được bật

+0

bản sao có thể có của [Cách phát hiện nếu JavaScript bị tắt?] (Http://stackoverflow.com/questions/121203/how-to-detect-if-javascript-is-disabled) –

Trả lời

5

Tôi có xu hướng sử dụng theo cách sau.

1) hiển thị một thông báo lỗi mỗi mặc định

<div id="noJS">For use, you need JavaScript enabled. (nice images and perhaps a link to your fav. browser)</div> 

2) vô hiệu hóa nó qua javascript và hiển thị chứa các ứng dụng chính của

$("#noJS").hide(); 
$("#app").show(); 

Nếu javascript chỉ cần thiết cho ví dụ điều hướng, bạn nên cố gắng phân phối phiên bản không phải js cho người dùng không phải js để tăng lượng người xem của bạn.

+2

luồng lưu trữ truy cập cũng sử dụng kỹ thuật này (để hiển thị biểu ngữ màu đỏ ở đầu trang) –

+0

Tôi sẽ mở rộng 'js' thành 'JavaScript' trong một thư như thế này. Nhiều người dùng cuối có thể không biết đầu vào 'js' là gì. – scunliffe

+0

sửa chữa nó, mặc dù nó đã được nhiều hơn có nghĩa là một ví dụ :-) –

0

Không phải khi tải ban đầu. Bạn có thể thử sử dụng các thủ thuật như thiết lập cookie trong JavaScript và kiểm tra nó trên các yêu cầu tiếp theo. Cách tốt nhất là đảm bảo rằng trang web của bạn hoạt động không có JavaScript và sử dụng JavaScript để cung cấp trải nghiệm tốt hơn.

+0

những ứng dụng sử dụng rõ ràng javascript tức là gmail? – Tim

+5

@ user270797, Gmail của tôi không yêu cầu Javascript. Gmail có phiên bản chỉ HTML, sử dụng Javascript cho các tính năng được thêm nhỏ, chẳng hạn như tìm kiếm địa chỉ liên hệ trực tiếp. – strager

6

<noscript>.

+2

nhớ báo trước bằng noscript - ngay cả khi nó không được sử dụng, nó không đảm bảo rằng javascipt có sẵn hoặc hoạt động chính xác. Bạn có thể thấy điều này bằng cách sử dụng Firefox Web Developer để tắt javascript. –

+0

@Colin: Người dùng NoScript sẽ bị giống nhau: http://stackoverflow.com/questions/993387/noscript-tag-javascript-disabled-warning-and-google-penalty/993461#993461 –

0

Bạn có thể tạo một trang với <noscript> nội dung, và có chuyển hướng rằng việc sử dụng javascript để ứng dụng thực tế của bạn

3

Theo mặc định, phục vụ cho phiên bản miễn Javascript. Sử dụng Javascript để chuyển hướng người dùng ngay lập tức sang phiên bản Javascript (phiên bản này sẽ chỉ hoạt động nếu Javascript được bật).

2

Kịch bản là:

  1. khách làm cho yêu cầu đầu tiên vào trang web
  2. của bạn Cung cấp một trang mà đặt hai cookiesl một với javascript, khác với ngôn ngữ phía máy chủ của bạn.
  3. Đầu trang hoặc chuyển hướng Meta đến một trang khác để thử nghiệm.
  4. Trên trang kiểm tra, hãy kiểm tra xem bạn có nhận được cookie được phân phối trên máy chủ để xem hỗ trợ cookie có được bật hay không và kiểm tra xem cookie javascript đã được nhận để bật hỗ trợ JS chưa.
  5. Tận hưởng kiến ​​thức mới được tìm thấy của bạn.
Các vấn đề liên quan