2010-09-18 35 views
6

我正在構建視頻共享CMS的過程,該視頻共享CMS使用大量的jQuery和ajax處理從豐富的UI效果到提交數據和從數據庫檢索數據的所有內容。當JavaScript被禁用時,一切都會崩潰,90%的功能無法使用。有時可以不要降級嗎?

我開始認爲其確定爲不爲某些類型的這樣一個它採用了閃存播放器以流爲主要內容的網站的正常降級 - 視頻。那麼,如果網站的主要內容不能被觀看,那麼要做到雙方都支持其他所有內容,會有什麼意義。即使YouTube停用JS禁用。

我打算下釋放開源許可的CMS,所以問題是:

對於質量分佈(和這種類型的網站)不正常降解好主意嗎?

回答

3

只要你清楚地告訴用戶,他們需要支持JS,這是確定它爲「土崩瓦解」無JS。但是,如果你沒有表明沒有JS的情況下它不應該工作,那麼人們就會生氣。現在大多數人希望網站在某些功能方面需要JS。

對於像視頻內容管理系統那樣複雜的事情,如果用戶不啓用JS,則是用戶的錯誤。如果沒有JS,他們不應該期待類似這樣的工作,即使他們這樣做,可能也不值得花時間維護你的站點的兩個版本:JS和非JS,特別是對於開源的東西。

+3

+1「只要你向用戶說明他們需要啓用JS,就可以在沒有JS的情況下」分崩離析「。對我來說,這**是優雅的失敗。 – lonesomeday 2010-09-18 17:43:40

2

鑑於您的應用程序依賴於javascript來實現其全部目的,所以您不可能優雅地降級。只要你的網站清楚地告訴用戶啓用JavaScript來獲得你所有的真棒功能,並且可能有一些關於如何在不同瀏覽器中這樣做的鏈接,你應該沒問題。 :d

1

優雅降級並不意味着「一切工作完全在每個瀏覽器」,它的意思是「如果你的瀏覽器無法處理的東西,你看到的東西明智的,而不是壞的垃圾」。

就你而言,只要檢測到該網站將無法正常工作,並顯示一個很好的錯誤頁面來解釋所需的東西就是一種可接受的優雅退化形式。

2

你基本上選擇了一個觀衆。這與決定是否支持IE6並無不同。這不是正確的,而是錯誤的,這只是一個問題,即你願意失去多少百分比的觀衆,以換取​​最終的發展緩解。

也就是說,我發現progressive enhancement(其中優雅的退化是一個outcome)是一種有效和安全的開發方式。首先做HTML,讓它工作,然後在頂部添加JS作爲糖。

這不可能是你的一個用戶沒有運行Javascript。什麼很可能,爲我的謙虛自我發言,是你會有一些小JS錯誤,它會殺死所有的東西。 (JS傾向於停止例外情況,您可能已經注意到了。)

很高興知道,如果發生此類錯誤,您的用戶仍然可以使用該站點。在我看來,這就是優雅的退化。

+0

更何況,殺死所有東西的*小錯誤甚至可能不是你的錯。有各種各樣的過濾代理,僞造安全軟件和瀏覽器加載項可能會影響你的頁面內容,可能導致JS功能崩潰。 – bobince 2010-09-18 17:44:59

相關問題