所謂平穩退化,就是指可以讓訪客在瀏覽器不支援javascript或者禁用了JavaScript的時候依舊可以順利的瀏覽你的網頁,下文給大家簡單介紹了js中的平穩退化,感興趣的朋友一起看看吧
所謂平穩退化,就是指可以讓訪客在瀏覽器不支援javascript或停用了JavaScript的時候依舊可以順利的瀏覽你的網頁;即,雖然有些功能無法使用,但基本操作依舊可以順利完成。
這裡用在新視窗開啟一個連結作為例子,我們知道js開啟新視窗的方法:
window.open(url,name,features)
在這裡,url是要開啟的網頁的url位址,name是新視窗的名字,最後的features是一系列的參數
好,現在寫一個簡單的函數:
function openwindow(winUrl){ window.open(winUrl,"new window","width = 320 , height = 480") }
接著可以使用偽協定呼叫函數:
<a href = "javascript:openwindow('http://www.google.com');">google</a>
這樣的做法,可以在支援「JavaScript:」偽協定的瀏覽器裡正常運行,不支援JavaScript的瀏覽器會嘗試開啟連結但失敗,而在禁用了JavaScript功能的瀏覽器裡什麼都不會做;
#另一種做法是使用onclick:
<a href = "#" onclick = "openwindow('http://www.google.com');return false;">google</a>
在這裡"#"代表著一個空鏈接,加入了return false之後,3499910bf9dac5ae3c52d5ede7383485標籤不會跳到href指定的鏈接,在這裡實際工作都在onclick裡執行。但是這樣做在禁用了JavaScript功能的瀏覽器裡依舊無法開啟。
那麼怎麼可以解決這個問題呢,其實只需要:
<a href = "http://www.google.com" onclick = "openwindow(http://www.google.com);return false;">google</a>
或:
##
<a href = "http://www.google.com" onclick = "openwindow(this.href);return false;">google</a>我們使用onclick去執行JavaScript的函數,但是在href屬性裡也確實填寫了url,這樣,如果是在禁用了JavaScript 的瀏覽器裡,雖然不能打開一個新窗口,在新窗口裡打開連接,但是至少是可以跳到目標網頁的(目前頁面);最後說一下為什麼要使用平穩退化,可能會有這樣的想法:讓那些禁用了或不支援JavaScript的瀏覽器順利訪問你的網站有那麼重要嗎,畢竟現在使用不支援JavaScript或總是停用JavaScript功能的使用者應該是已經非常少的了。 確實這樣的用戶已經非常少了,但是它很重要;這個用戶可能是一個搜尋機器人——一種自動化程序,他們瀏覽各個網頁的目的只是為了加入到在搜尋引擎的資料庫裡,各大搜尋引擎都有類似的程序,但是大多數的搜尋機器人無法理解JavaScript程式碼,所以如果你的網頁無法平穩退化,會很大程度打擊其在搜尋引擎上的排名。
總結#
以上是JavaScript中關於平穩退化graceful degradation的簡單介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!