什麼是平穩退化呢,下面舉例說明下: javascript
在google.com.hk的左上角,有一個更多的連接,它具備一個目標地址,可是當咱們點擊時,大多數狀況發現的是彈出一個下拉列表供用戶選擇(這是一種典型的漸進加強形式)。怎麼理解?——若是用戶的瀏覽器支持javascript,那麼就能夠享受到這種快速導航的服務功能。
如今,請你禁用的你的瀏覽器的javascript功能(不會禁用猛擊這裏),再次訪問google.com.hk,再次點擊更多時,發生了什麼?是的,沒有看到下拉列表,而打開了一個新頁面。(這是一種典型的平穩退化)。怎麼理解?——若是用戶的瀏覽器不支持javascript,用戶仍然可以訪問個人網站。 css
對於實現此功能,其實很簡單: java
<script type="text/javascript">
2 function displayMenu() {
3 //顯示導航列表;
4 }
5 </script>
6
7 <a href="目標頁面" onclick="displayMenu(); return false;">更多»</a> web
其中,displayMenu()是一個顯示導航列表的功能函數(這裏省略它的實現,由於討論的並非這個)
onclick指定了連接的點擊事件。
return false : 取消了瀏覽器的默認行爲(這樣就執行了displayMenu(),而不發生頁面的跳轉了); 瀏覽器
若是你的瀏覽器支持javascript時,那麼onclick後的代碼確定會被執行。不然,onclick後的代碼不會被執行,那就會發生頁面的跳轉。這樣無論是否支持javascript,用戶都能順利的訪問個人網站。 框架
可能有人會說,如今怎麼會有人去禁用和不支持javascript呢,可是,就目前而言,各大搜索引擎網址的搜索機器人都不支持動態內容吧,當咱們將核心經過js、DOM技術增添到網頁中,這樣,可能就不是一個明智的選擇了;並且對於如今,因爲各類彈窗廣告等問題,不排除有些會禁用js。 函數
而漸進加強的思想就是,應該從最核心的開始,也就是內容開始,這也是做爲web最原始的需求。應該根據內容須要選擇合適的標籤實現良好的框架,再經過css等進行加強,使用js加強某些非核心內容。 網站