一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

JavaScript Event學習第十章 一些可替換的事件對

測試的局限性
這一章我們打算尋找哪些事件可以用來仿真鼠標事件。注意這一系列測試不包括屏幕閱讀器。因為我不能滿足所有的條件,因此測試也有局限性。這個測試目標僅僅只是那些在圖形界面下的瀏覽器中不使用鼠標的用戶。
我假設這些測試一樣可以用來在一些移動設備上。因為條件不足,所以也不能測試。很多時候在移動設備上表現總是不盡如人意。
總結
不幸的是,我們不能制定一個嚴格的鼠標事件和非鼠標的一對一的方案,因為非鼠標事件和鼠標事件有很多不同。所以下面的建議在大多數場合適用,但不是所有。
下面就是我的測試結果:
1、mouseover:focus
2、mouseout:blur
3、click:不需要匹配
4、dblclick:不知道
5、mousedown:keydown(最不壞的選擇)
6、mouseup:keyup(最不壞的選擇)
7、mousemove:沒有鼠標不可能

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



現在當用戶鼠標經過或者tab經過時,函數都會被執行。
然而,添加一些事件還是不夠的。我原始的工作室直接在圖像上設置onmouseover和mouseout。不幸的是tab一個圖像基本上不可能:tab只對鏈接和表單有用。所以我需要對把事件添加的圖像的父節點上:鏈接。
這個簡單的例子不會因為我們的重新注冊改變,但更復雜的腳本可能會無法界定訪問活動,例如,一個div。
為了保證完美的可用性,我們可以只定義鏈接和表單的事件,就像我們再1998年時候那樣干的。雖然網上的大部分事件還是定義在鏈接上,不過一個復雜的比如文本編輯的腳本對于非鼠標用戶就不可用,因為我們要在上面click。

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

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

JavaScript技術JavaScript Event學習第十章 一些可替換的事件對,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 色妞精品一区二区 | 久久ww| 91成人免费视频 | 91视频免费观看高清观看完整 | 日产毛片| 国产高清精品入口麻豆 | 亚洲全网成人资源在线观看 | 亚洲一区二区三区免费在线观看 | 亚洲a毛片| 免费观看成人欧美1314www | 在线看91| 久久艹综合 | 精品综合在线 | 成人精品免费网站 | 午夜在线观看视频免费 成人 | 亚洲人成a在线网站 | 亚洲成a| 美女扒开屁股给男人看无遮挡 | 99国产在线观看 | 韩国一级爽快片淫片高清 | 久久亚洲精品无码观看不卡 | 草草视频手机在线观看视频 | 国产国语在线播放视频 | 亚洲国产乱码在线精品 | 精品久久中文久久久 | 国产精品久久久久久一区二区三区 | 免费激情小视频 | 亚洲精品福利在线观看 | 久久久美女视频 | 中文一区| 久久91精品久久91综合 | 国产伦理久久精品久久久久 | 精品一区二区三区无卡乱码 | 91麻豆国产视频 | 国产91系列 | 国产精选在线观看 | 国产全部理论片线观看 | 99精品热线在线观看免费视频 | 六月婷婷啪啪 | 色综合久久六月婷婷中文字幕 | 天天操天天透 |