亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript Event學(xué)習(xí)第十章 一些可替換的事件對

 更新時(shí)間:2010年02月10日 23:21:16   作者:  
為了讓我們的JavaScript驅(qū)動的頁面對那些不能或者不想使用鼠標(biāo)的用戶也能很好的使用,我們對于像mouseover和click這樣的事件做一些處理,同樣的,對于非鼠標(biāo)事件也同樣的要我們的腳本執(zhí)行。
測試的局限性
這一章我們打算尋找哪些事件可以用來仿真鼠標(biāo)事件。注意這一系列測試不包括屏幕閱讀器。因?yàn)槲也荒軡M足所有的條件,因此測試也有局限性。這個(gè)測試目標(biāo)僅僅只是那些在圖形界面下的瀏覽器中不使用鼠標(biāo)的用戶。
我假設(shè)這些測試一樣可以用來在一些移動設(shè)備上。因?yàn)闂l件不足,所以也不能測試。很多時(shí)候在移動設(shè)備上表現(xiàn)總是不盡如人意。
總結(jié)
不幸的是,我們不能制定一個(gè)嚴(yán)格的鼠標(biāo)事件和非鼠標(biāo)的一對一的方案,因?yàn)榉鞘髽?biāo)事件和鼠標(biāo)事件有很多不同。所以下面的建議在大多數(shù)場合適用,但不是所有。
下面就是我的測試結(jié)果:
1、mouseover:focus
2、mouseout:blur
3、click:不需要匹配
4、dblclick:不知道
5、mousedown:keydown(最不壞的選擇)
6、mouseup:keyup(最不壞的選擇)
7、mousemove:沒有鼠標(biāo)不可能

如果頁面一定需要完美的支持非鼠標(biāo)用戶,那么我們可選擇的能應(yīng)用事件處理程序的元素就非常少。實(shí)際上就回到了Netscape 3時(shí)代,那時(shí)候事件處理程序只在鏈接和表單里才有用。
更多的研究還是有必要的。
準(zhǔn)備
在大多數(shù)的瀏覽器中用戶可以通過Tab鍵來飄過整個(gè)頁面。當(dāng)他們這樣做的時(shí)候,焦點(diǎn)就會跳到下一個(gè)鏈接或者表單上。這在IE和Mozilla都可以運(yùn)作。在Safari里面你需要按F1然后才能激活鍵盤快捷鍵。
Opera用戶是另外一個(gè)系統(tǒng)的。鏈接上的跳轉(zhuǎn)需要按Ctrl+方向鍵。雖然是不同的組合,但是我還是會稱其為“Tabbing”。
例子:傳統(tǒng)的mouseover
如何做到呢?首先也是最重要的為mouseover和mouseout的添加兩個(gè)事件:
復(fù)制代碼 代碼如下:

imgs[i].onmouseover = imgs[i].onfocus = mouseGoesOver;
imgs[i].onmouseout = imgs[i].onblur = mouseGoesOut;



現(xiàn)在當(dāng)用戶鼠標(biāo)經(jīng)過或者tab經(jīng)過時(shí),函數(shù)都會被執(zhí)行。
然而,添加一些事件還是不夠的。我原始的工作室直接在圖像上設(shè)置onmouseover和mouseout。不幸的是tab一個(gè)圖像基本上不可能:tab只對鏈接和表單有用。所以我需要對把事件添加的圖像的父節(jié)點(diǎn)上:鏈接。
這個(gè)簡單的例子不會因?yàn)槲覀兊闹匦伦愿淖?,但更?fù)雜的腳本可能會無法界定訪問活動,例如,一個(gè)div。
為了保證完美的可用性,我們可以只定義鏈接和表單的事件,就像我們再1998年時(shí)候那樣干的。雖然網(wǎng)上的大部分事件還是定義在鏈接上,不過一個(gè)復(fù)雜的比如文本編輯的腳本對于非鼠標(biāo)用戶就不可用,因?yàn)槲覀円谏厦鎐lick。

翻譯地址:http://www.quirksmode.org/js/events_pairs.html

作者:北玉(tw:@rehawk)
文章出處:beiyu.cnblogs.com

相關(guān)文章

最新評論