我本人就是一個用戶,當我在使用全國軟考網是所遭遇的問題讓我頭痛,報名和查看信息要登錄帳戶時,瀏覽器老是報錯,彈窗提示說必須使用IE6版本JS才能正常運行,這樣真的很讓我很無語。還有在一些個別的企業網站,打開頁面一般須要5S的時間,期間頁面呈現空白,也會聽到散熱風扇「呼呼」地吹着熱風,我查看了一下源代碼,文檔的代碼結構讓我內心很吃驚。並且百度的大部分產品徹底沒有對桌面觸控事件提供支持,讓多合一設備無從下手...javascript
我在開發我的網站時,始終重視「用戶體驗」這個概念。讓用戶放鬆的瀏覽網站中的內容,難道這不重要嗎?讓代碼遇到錯誤是儘快返回、控制做用域、提高循環性能、緩存變量、使用對象式函數及方法等,這些技術的運用都源自建立良好用戶體驗這一目標。css
1 success : function (data) { 2 var fruit = data.fruit, 3 count = fruit.length; 4 //將output元素置空 5 6 $("#output").empty(); 7 if(count > 0){ 8 $.each(fruit, function (i,obj) { 9 $("#output").append("<p>'+obj.name+'<a href="*" '+obj.color+'>'+obj.color+'</a></p>"); 10 }) 11 } 12 //這是一段截取的向json數據文件請求的js片斷,它形象的返回了請求的各個階段 相應的提示 13 }.error(function () { 14 alert("返回請求錯誤信息!") 15 }).complete(function () { 16 alert("返回發送完成消息!") 17 }).success(function () { 18 alert("返回請求成功消息!") 19 })
加載信息提示用戶html
有時咱們須要Ajax接受服務器的數據,網絡通訊條件可能很是的不穩定,會出如今請求和瀏覽器渲染過程當中致使網頁部分暫時空白的狀況。若是不針對用戶顯示相應的等待提示,可能會使用戶感到焦慮,在等待過程當中在頁面左點右點,甚至會認爲網站的自己出了問題,從而離開網站。可見用戶的體驗關係到了網站的運營。至此,咱們須要在Ajax通訊過程當中同時在相應的DOM節點添加loding…或者小動畫等提示信息,這樣的話用戶可能會爲數據等待一段時間,而不至於迅速離開網站。前端
1 "use strict"; //這是一段截取的js(ajax)代碼 2 3 var request = getHTTPObject(); 4 //我想要提醒你們的是:當網頁的某個區域在向服務器發送http請求的過程當中,要有一個標識提醒用戶正在加載... 5 6 outputElement.innerHTML = "Loding..."; //也能夠根據各位的需求添加一個循環小動畫 7 8 request.onreadystatechange = function () { 9 10 if(request.readyState ===4 || request.status ===200){
特效 (http://www.w3school.com.cn/jquery/jquery_ref_effects.asp)html5
對於網站特效的問題,我建議使用適量的前端動態特效,輔以事件監聽器達到一種「動態」網站的效果。CSS3新標準迎來大量的僞類樣式,使用javascript代碼結合CSS能夠創造出很好的特效;另外jQuery庫中定義了animat()方法,能夠直接定義元素的動態效果。java
瀏覽器適配問題(http://www.w3school.com.cn/browsers/index.asp)jquery
關於舊版瀏覽器適配的問題,可使用框架進行兼容。HTML5 boilerplate(http://www.bootcss.com/p/html5boilerplate/)是一個前端開發模板,官方宣傳由100爲資深開發者共同協做而成。它能幫你構建健壯、快速且適應能力強的Web 應用程序和網站,你使用編碼器閱讀HTML5 boilerplate,你會驚歎這個僅僅64kb左右的源碼包,每個代碼都有其存在的意義。它確實能讓你的項目開一個好頭,它能識別舊的Ie瀏覽器,並給出用戶提示,以避免用戶誤解。你能夠自行下載源文件,深刻研究。ajax
當你開發項目的過程當中,須要對如何處理javascript中的各類問題作出結構或風格方面的決策時,應始終記住用戶體驗一詞,以此來指導開發過程。咱們一般關注的是應用程序的終端永華,實際上用戶體驗還包含另外一方面的內容,它就是「可維護性」,它與終端用戶的體驗同等重要。json
可維護性指的是與你一同開發團隊中的其餘能更新你的代碼的人,是否可以有效地維護你開發出來的程序。咱們也許能夠爲了提高終端用戶的可用性而犧牲了可維護性,可是一名合格的開發者應該在可用性、執行效率及終端用戶可用性之間尋求平衡。瀏覽器
我常常再作一個決定時,我會思考兩個問題:「哪一種方案會終端用戶最好?」,「這麼作對代碼庫的可維護性會形成什麼影響?」。若是個人腦海中有明確的答案,這就證實我帶領着項目正在朝着良好的方向前進。