有了網(wǎng)絡交互這一最基礎的要素,用戶可以通過點擊鏈接和表格提交的方式來與網(wǎng)頁交互。這一交互性開創(chuàng)了客戶端(通常是網(wǎng)絡瀏覽者)與服務器之間的對話(客戶端發(fā)送數(shù)據(jù)和頁面請求給服務器,服務器收集數(shù)據(jù)并返還至頁面)。一旦服務器發(fā)送一個頁面,所有對話都將終止,直到客戶端提出另一請求。用戶對頁面的處理是非實質(zhì)的,除非點擊了另一個鏈接或是提交了另一個表格。
這一交換類型并未趨向于我們在軟件應用程序中已逐漸習慣的動態(tài)交互類型,在后者中,用戶行為會獲得立即的反饋,且?guī)в猩舷挛。例如,現(xiàn)代的拼寫檢查會出現(xiàn)在聯(lián)機文檔中,而不是在附屬窗口中逐個地顯示單詞。
一個有效的用戶界面會通過一項任務引導用戶,隨時提供反饋以避免發(fā)生錯誤,而不是讓用戶在完成之后再糾正錯誤。這一在線引導類型很難通過標誰的網(wǎng)絡技術來實現(xiàn)。拿必填項來說,在一個標誰的網(wǎng)絡環(huán)境中,用戶提交表格,服務器隨后會檢查數(shù)據(jù),如果該項未填寫,那么服務器會將表格返還給用戶讓其補充完整。如果用戶在提交之前未找到所有必填項,那么這一動作將會一直重復。在一個更為動態(tài)的界面中,表格字段在完成的時候就生效了,而提交按鈕僅在所有選項都填寫完成時才會被激活。
在網(wǎng)絡中,這一類型的客戶端交互僅在有擴展(add-on)技術支持時方才可能實現(xiàn),諸如Flash和JavaScript.當今的絕大多數(shù)瀏覽器都支持JavaScript,絕大多數(shù)瀏覽器安裝程序中也包含了Flash的插件。不過,這些技術受支持的范圍不及標誰的HTML廣泛。用戶可以在他們的瀏覽器預設中禁用JavaScript,并且有些設備并不支持JavaScript和Flash;其他的設備提供支持但實現(xiàn)效果不同。盡管客戶端腳本語言為交互提供了很多益處,但是我們無法排他地依賴它來提供必要的交互。為了實現(xiàn)通用可用性,在這些技術不可用或禁用時,也要保證使用客戶端腳本語言的網(wǎng)絡應用程序能發(fā)揮作用。
Ajax
Ajax,即Asynchronous JavaScript和XML的縮寫,這是一項提供動態(tài)界面元素和動態(tài)頁面內(nèi)容的技術,并頻繁地用于創(chuàng)建網(wǎng)絡應用程序。有了Ajax,頁面可以發(fā)送小字節(jié)數(shù)據(jù)的請求來回應用戶的動作(例如,在地圖上進行放大),同時數(shù)據(jù)會顯示在頁面的一個區(qū)域而不用下載整個網(wǎng)頁。Ajax之所以擁有性能優(yōu)勢是因為每個用戶的動作并不要求重新裝載整個頁面。Ajax還因為支持動態(tài)和回應性的用戶界面而提供了更多的交互。
程序和表格與傳統(tǒng)的軟件應用程序已經(jīng)開始了競爭Ajax的不足在于其對JavaScript的依賴性,我們已經(jīng)鑒定了JavaScript的風險所在,即沒有人能保障其可以在客戶端的瀏覽器上運行。并且,JavaScript 的實現(xiàn)效果因不同的瀏覽器而有所不同,這使得大量的跨平臺檢查成為了任何Ajax項目的一個關鍵組成部分。除此之外,搜索引擎無法誰確索引帶有動態(tài)內(nèi)容的頁面,因為對用戶隱蔽的內(nèi)容也會對搜索引擎軟件隱蔽。最后,Ajax,更通常的叫法是動態(tài)界面,對可訪問性提出了挑戰(zhàn)。
可訪問性
在網(wǎng)絡的早期,當我們從基于文本的網(wǎng)頁進人到圖形網(wǎng)頁時,我們改善了可用性但犧牲了通用可用性。因為文本是可機讀的,因此它可以被廣大的用戶和設備訪問。圖形是非機讀的,使用了圖形和復雜布局的網(wǎng)頁增加了訪問的難度。如今,當我們從簡單的鏈接和表格上升到復雜且動態(tài)的界面時,我們看到的是一個與交互類似的趨勢。盡管這些界面可能更具有可用性且更高效,但它們要實現(xiàn)針對所有用戶的可訪問性會更難。屏幕閱讀軟件的用戶或許并不知曉動態(tài)內(nèi)容已經(jīng)下載到頁面。鍵盤用戶或許無法使用界面工具。一些“瘦”客戶端,諸如PDA和移動電話,沒有馬力來運行這些技術。HTML和其他的W3C技術旨在使用諸如替代性文字和回退(fallback)功能來支持可訪問性設計,然而,很多插件(add-on) 技術在設計的過程中并未考慮到可訪問性。
好消息是,W3C正努力創(chuàng)建標準來支持同時具有動態(tài)性和可訪問性的界面的發(fā)展。可訪問性富因特網(wǎng)應用程序(Accessible Rich Internet Application, ARIA)計劃創(chuàng)建一種標注 應用程序界面的規(guī)范,以便所有類型的客戶端一從標準的瀏覽器到屏幕放大鏡再到屏幕閱讀器都能以某種方式幫助用戶訪問和操作動態(tài)界面元素。ARIA和Adobe在努力實現(xiàn)可訪問的Flash, HTML和XHTML也在不斷努力,這些技術將產(chǎn)生多種工具,我們可用來創(chuàng)建可訪問的動態(tài)界面。與此同時,我們擁有標準的工具,隨時允許我們創(chuàng)建可訪問且有效的網(wǎng)站建設Web應用程序。