打開 Drupal 的新后台,發現顯示大面積空白
。本以為是 CSS 的問題,后來折騰好久才發現是我之前因為某些站的安全問題把瀏覽器的 Javascript 給禁用了。Javascript 的日益強大使我們的網頁豐富多彩,交互越來越強大,功能越來越炫。但是有的網頁效果完全依賴 Javascript 來實現,一旦離開了 Javascript 的支持,可能連基本的內容都顯示不完全,這時候,我們老當益壯的noscript
標簽就該出場了
。
noscript
標簽是一個相當古老的標簽,其被引入的最初目的是幫助老舊瀏覽器的平滑升級更替,因為早期的瀏覽器並不能支持 JavaScript。noscript 標簽在不支持JavaScript 的瀏覽器中顯示替代的內容。這個元素可以包含任何 HTML 元素。這個標簽的用法也非常簡單:
<noscript>
<p>本頁面需要瀏覽器支持(啟用)JavaScript</p>
</noscript>
不過到了現在,瀏覽器不支持 Javascript 的事情應該已經不會出現了,但是用戶也可能因為各種原因而禁用了 Javascript。如節省流量,延長電池使用時間,或者是不希望自己的隱私被各類統計/追蹤腳本泄露
。也有相當一部分用戶安裝了類似NoScript
的瀏覽器擴展來禁止瀏覽器運行 Javascript。
網站雖然不能強制用戶啟用瀏覽器的 Javascript,但是可以提示用戶的瀏覽器已經禁用腳本,來達到更好的用戶體驗。例如 Fackbook 這樣的提示:
noscript 標簽中的元素中的內容只有在下列情況下才會顯示出來:
- 瀏覽器不支持腳本
- 瀏覽器支持腳本,但腳本被禁用
符合上述任何一個條件,瀏覽器都會顯示 noscript 中的內容。而在除此之外的其他情況下,瀏覽器不會呈現 noscript 中的內容。
寫在最后
使用 noscript 標簽只能給網站用戶傳達一個信息,即如果不啟用 Javascript,網頁內容和效果可能不能完全被呈現。但如果有些用戶並不懂得如何去開啟 Javascript的話,這樣的提示信息對他也並沒有什么實際的幫助。所以我們還是應該在網站設計之初多多考慮在沒有 Javascript(或 HTML5,或其他依賴)的支持的情況下,如何使這樣的非常規狀況盡可能少的影響到用戶的瀏覽體驗。
我的個人博客,里面會有各種有意思的東西哦,歡迎關注。iamkun.com