校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 鏈接A的語義、寫法和最佳實踐

鏈接A的語義、寫法和最佳實踐

熱門標簽:可以集成到系統的外呼 400開頭電話在哪辦理 電話外呼系統怎么找準客戶 揚州市地圖標注 西安公司外呼系統價格 外呼系統隱私 中國世界文化遺產地圖標注 荊州銷售電銷機器人 電腦外呼系統安裝

鏈接A的語義、寫法和最佳實踐.
在JavaEye看見這個話題,討論挺有意思,忍不住也摻和一把。 語義思考
首先,鏈接a和按鈕button是有語義的,不能因為使用上的方便而替換。a是anchor的縮寫,是一個錨點,用來導航或定位。典型用法為:
<a href="http://www.w3c.org/">W3C Web Site</a> <a name="anchor-one">This is the location of anchor one.</a> <a href="#anchor-one">Link to anchor one</a>
還可以同時指定name和href屬性,這是基礎知識,若有疑問請參考HTML 4.01規范。
再說按鈕(包括 button 和 <input type=”button/submit” />)。從語義上講,按鈕是表單的一部分,觸發的動作和表單是有關聯的。如果根本就沒有表單操作,就不應該使用按鈕。舉些例子:

上圖是一些鏈接,雖然長得像button,但語義上是a.

上圖中的顯示和排序按鈕,是操作表單。從語義上講,用button或input更合適。(注意:淘寶搜索結果頁目前采用的是a, 這是出于漸進增強的考慮,下面會提及)
總之鏈接和按鈕有各自的語義和使用場景,不能隨意替換使用。 寫法分析
世界永遠沒那么簡單,在當今JavaScript如日中天的Web世界里,鏈接a經常用來觸發js事件:
<a href="" onclick="something()">test 1</a> <a href="#" onclick="something();return false">>test 2</a> <a href="javascript: void(0)" onclick="something()">>test 3</a> <a href="javascript: void something()">test 4</a>
首先,第一種寫法在ie下是有問題的,原因是 ie下會自動補全href.
第二種寫法直接在onclick事件中阻止掉默認事件,因此href="#"中的#實際上可以為任意值。用#,是考慮沒有js時,點擊后停留在本頁(注意:當a在一屏以下時,這種寫法會導致頁面回滾到頂部)。
第三種寫法,href值是一個javascript偽協議,void是javascript的一個一元操作符(比如!, typeof)。void操作符的作用是,只執行后面的表達式,不返回任何值。看起來好像是void(0)阻止了默認事件,實際上,下面這些寫法都沒問題:
<a href="javascript: void(1)" onclick="something()">>test 3</a> <a href="javascript:;" onclick="something()">>test 3</a> <a href="javascript:" onclick="something()">>test 3</a> <a href="javascript: return true" onclick="something()">>test 3</a>
因為a的默認操作就是javascript偽協議的內容,里面加不加void都不會觸發其它事件。(注意:Opera下,當偽協議里有返回值時,會改變href, 因此我們一般寫void(0)或空語句)
理解了第三種寫法,第四種寫法也就明白了:href="javascript: void something()". 這種寫法有一個“好處”是,鼠標懸浮時,用戶可以通過狀態欄看到將要執行的函數。對開發者來說,這或許是個好處,但對普通用戶來說,這真的會增加信賴感嗎?抑或是恐懼感?沒有數據,無法下結論。
除了上面的寫法,還有一種推薦的寫法是,通過class或id給a增加一個hook,然后在js里通過hook來添加事件。 反思
我不想去討論上面的各種寫法中哪一個是最好的。讓我們思考本源問題:為什么我們會用a來觸發js事件?我能想到的理由有:
    這樣自動就擁有鼠標的懸浮樣式了 大家都這么寫 還真想不出啥理由,這不是很自然的事嘛 因為IE6只支持css樣式的a:hover,而且href還不能為空

可以看出,除了懸浮樣式,找不到啥實質性的理由了。我們暫時拋開樣式問題,來看一個例子:

上面是Google Reader的操作欄,感興趣的不妨firebug一下,采用的標記是:

鼠標的懸浮樣式,也根本不是問題:

css里,加上cursor: pointer就行。
從上面的例子中,我們可以得到一個結論:如果僅僅是觸發js動作,沒有任何導航或定位的語義,采用span或其它合適的標簽即可,沒必要錯誤的使用a(用a反而惹麻煩:一是要去除默認事件,二是狀態欄的信息會讓普通用戶迷惑甚至恐懼)。
當然,如果本身就是一個鏈接,僅僅想在導航前增加一些js邏輯,或者是表單排序等應用,從漸進增強角度考慮,最好的實踐是將href值寫全,以使得在不支持js的瀏覽器下,也能保證可用性。 最佳實踐
不是總結,不是一錘子定音,“最佳實踐”只是一系列原則,是寫代碼前要先想一想:
    用鏈接a,還是用按鈕button,根據具體使用場景來定,button是和表單相關的元素 不要濫用a,當你都想不明白href值是什么時(不要出現javascript偽協議,不要孤獨寂寞的#),請選用其它標簽,通過hook在js中添加事件 如果確實是一個鏈接,同時又有onclick事件,請想想漸進增強,保證href值的完整性

代碼有生命,標簽王國是一個動物園,熟悉它們,一切很可愛。

標簽:延安 貴陽 濟南 錫林郭勒盟 阿拉善盟 樂山 白銀 四川

巨人網絡通訊聲明:本文標題《鏈接A的語義、寫法和最佳實踐》,本文關鍵詞  鏈接,的,語義,寫法,和,最佳,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《鏈接A的語義、寫法和最佳實踐》相關的同類信息!
  • 本頁收集關于鏈接A的語義、寫法和最佳實踐的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    丁香六月综合激情| 男人的天堂亚洲一区| 亚洲国产aⅴ天堂久久| 日本不卡一二三| 91蜜桃网址入口| 久久人人爽爽爽人久久久| 亚洲电影一区二区三区| 99久久精品免费看国产 | 色婷婷综合中文久久一本| 日韩免费性生活视频播放| 亚洲影视资源网| 国产69精品一区二区亚洲孕妇| 91精品国产乱码| 亚洲午夜激情网页| 一本久道久久综合中文字幕| 久久久另类综合| 久久精品国产99国产精品| 欧美视频三区在线播放| 亚洲欧美福利一区二区| 大陆成人av片| 欧美国产成人精品| 国产精品123区| 26uuu成人网一区二区三区| 日韩成人dvd| 欧美老人xxxx18| 亚洲一区二区三区四区的| 91视频精品在这里| 亚洲人成在线播放网站岛国| 99天天综合性| 亚洲精品国产无套在线观| 亚洲高清视频的网址| 亚洲精品少妇30p| 欧美中文字幕一二三区视频| 亚洲欧美另类久久久精品| 91网站黄www| 亚洲综合久久久久| 欧美日韩高清不卡| 蜜桃精品视频在线| 国产亚洲精品aa午夜观看| 国产v日产∨综合v精品视频| 国产精品你懂的在线欣赏| jiyouzz国产精品久久| 国产精品久久久久久久裸模| eeuss鲁一区二区三区| **欧美大码日韩| 美国毛片一区二区三区| 偷拍一区二区三区四区| 美女在线视频一区| 久久国产精品色| 国产盗摄视频一区二区三区| 丁香婷婷深情五月亚洲| 懂色av一区二区三区蜜臀 | 一区二区三区**美女毛片| 亚洲精品写真福利| 欧美日韩不卡在线| 丝袜美腿亚洲综合| 久久奇米777| 色婷婷久久久久swag精品| 天堂在线亚洲视频| 26uuu亚洲婷婷狠狠天堂| av成人老司机| 蜜臀精品久久久久久蜜臀| 国产日韩精品一区二区浪潮av| 99久久精品99国产精品 | 免费看黄色91| 中文字幕av免费专区久久| 在线中文字幕一区| 国产综合色视频| 一区二区三区在线高清| 欧美大片一区二区| 色诱视频网站一区| 国模少妇一区二区三区| 亚洲精品日韩综合观看成人91| 欧美一区二区视频在线观看| 成人永久免费视频| 五月天国产精品| 中文成人av在线| 欧美一级免费大片| 色综合中文综合网| 91无套直看片红桃| 韩国av一区二区三区在线观看| 亚洲精品水蜜桃| 久久久99免费| 日韩一区二区三区av| 色哟哟一区二区三区| 国产成人鲁色资源国产91色综| 亚洲国产裸拍裸体视频在线观看乱了| 久久久久久久综合日本| 欧美一区二区性放荡片| 99九九99九九九视频精品| 久久 天天综合| 丝袜脚交一区二区| 一区二区免费在线| 国产精品超碰97尤物18| 精品88久久久久88久久久| 7777精品伊人久久久大香线蕉最新版| 93久久精品日日躁夜夜躁欧美| 国产剧情av麻豆香蕉精品| 免费成人深夜小野草| 亚洲一卡二卡三卡四卡五卡| 国产精品嫩草99a| 久久久久国产精品人| 日韩精品一区二区三区在线| 3d动漫精品啪啪1区2区免费| 欧美在线综合视频| 欧美精品久久久久久久久老牛影院| 美女脱光内衣内裤视频久久网站| 香蕉成人伊视频在线观看| 91精品国产福利在线观看| 精品亚洲porn| 日韩毛片一二三区| 3d动漫精品啪啪| 国产成+人+日韩+欧美+亚洲| 夜夜嗨av一区二区三区中文字幕| 在线免费观看一区| 亚洲欧洲三级电影| 亚洲欧洲一区二区在线播放| 成人高清免费观看| www.欧美色图| 91免费看`日韩一区二区| 92国产精品观看| 在线精品亚洲一区二区不卡| 日本丶国产丶欧美色综合| 97久久超碰国产精品| 欧洲国内综合视频| 欧美日韩一区二区三区在线| 91精品国产麻豆国产自产在线| 5858s免费视频成人| 日韩精品一区二区三区视频在线观看| 欧美成人video| 国产精品久久久久久久久搜平片 | 中文在线一区二区| 国产精品传媒入口麻豆| 一区二区三区在线观看网站| 亚洲午夜激情av| 激情亚洲综合在线| 岛国一区二区在线观看| 色婷婷综合久久久久中文一区二区 | 91高清视频在线| 日韩午夜小视频| 国产精品麻豆99久久久久久| 亚洲精品国产a久久久久久 | 亚洲一区在线观看免费| 蜜桃一区二区三区在线| 国产精品1024| 欧美午夜精品一区二区三区| 日韩一级免费一区| 国产精品丝袜久久久久久app| 亚洲人123区| 久久黄色级2电影| 91啪九色porn原创视频在线观看| 欧美日韩国产bt| 日本一区二区免费在线观看视频| 亚洲精品久久久久久国产精华液| 日韩不卡一二三区| 成人97人人超碰人人99| 这里只有精品电影| 国产精品国产a| 免费日韩伦理电影| 色诱亚洲精品久久久久久| 日韩欧美在线网站| 亚洲欧美一区二区三区国产精品| 久久精品国产999大香线蕉| 99久久久国产精品| 欧美精品一区二区三| 亚洲激情av在线| 国产成人精品影院| 日韩午夜激情视频| 亚洲 欧美综合在线网络| 成人免费看黄yyy456| 久久99精品久久久久久动态图| 国产综合久久久久久鬼色| 亚洲成人手机在线| 欧美日韩免费视频| 中文字幕一区二区三中文字幕| 国产一区美女在线| 日韩免费一区二区三区在线播放| 一区二区在线观看av| 一本色道亚洲精品aⅴ| 国产精品无圣光一区二区| 国产精品1区二区.| 国产日本欧洲亚洲| 国产精品不卡在线| 在线亚洲一区二区| 成人h版在线观看| 久久久久久黄色| 久久国产日韩欧美精品| 欧美日韩另类国产亚洲欧美一级| 亚洲视频免费看| 99久久久国产精品免费蜜臀| 国产午夜精品一区二区三区视频 | 丝袜美腿成人在线| 欧美三级中文字| 亚洲免费电影在线| 99精品一区二区| 中文字幕在线观看不卡| 国产91清纯白嫩初高中在线观看| 精品国产成人系列| 国产一区二区在线电影| 久久综合久久鬼色中文字|