使用一個優先方式還是優點?使用<a>標籤或任何標籤的JavaScript鏈接?
即
你可以有一個超鏈接
a
其中href
點#
與class
或id
,然後JavaScript代碼查找的元素on-click
事件。您可以擁有一個簡單的div或span,其中包含
class
或id
,並將javascripton-click
綁定到該元素。
我已經看到兩者都完成了。
上下文是在rails應用程序中使用JavaScript的一些功能。
使用一個優先方式還是優點?使用<a>標籤或任何標籤的JavaScript鏈接?
即
你可以有一個超鏈接a
其中href
點#
與class
或id
,然後JavaScript代碼查找的元素on-click
事件。
您可以擁有一個簡單的div或span,其中包含class
或id
,並將javascript on-click
綁定到該元素。
我已經看到兩者都完成了。
上下文是在rails應用程序中使用JavaScript的一些功能。
這是一個比javascript更多的HTML問題。
腳本共享和風格的鏈接不具有任何的上述特徵,或在最不需要重要的額外努力支持其中任何一項。
我認爲使用<a>
標籤的主要優點是默認行爲(包括href
時)是瀏覽器光標表示鏈接。雖然兩者都可以完成,但使用<a>
標籤也更具語義。
+1謝謝。我想知道它是否根據正在完成的功能而變化。也許有些情況下,翻滾和(例如)手形符號會遮蓋內容。儘管我現在無法想到一個具體的例子。在適當的情況下,雖然標籤可能具有(?)翻轉和屏幕閱讀器的替代文字和標題的巨大優勢? – 2014-08-27 12:17:18
構建語義標記是一個很好的設計。通過使用錨點來表示導航,您將堅持使用specification。如果你需要偏離,我會確保你的改變是合理的。
一個優勢更喜歡一個錨標籤是屏幕閱讀軟件爲盲人將解析DOM的錨點,以幫助用戶瀏覽頁面。通過使用div或span,導航鏈接將被忽略。
如果它是一個僅限JavaScript的鏈接,那麼附加它的內容並不重要,但使用<a>
可以在語義上正確的情況下爲您提供內置的鏈接/懸停/訪問樣式。但是,使用實際鏈接的最大原因是能夠在沒有啓用JS的情況下使瀏覽器退步。
例如,如果遵循鏈接,您可以在鏈接中加載ajax的下一個10個結果(如果可能的話),否則在服務器端加載。
<a id="nextByAjax" href="?next=10">Next 10</a>
如果您不想跟隨鏈接,請記住'返回false'onclick。 http://stackoverflow.com/questions/1291942/what-does-javascriptvoid0-mean/1291950#1291950 – mplungjan 2014-08-27 12:14:14
是否類似於'preventDefault()'(或更新的'defaultPrevented')? – 2014-08-27 12:18:11
帶有hrefs的元素會自動添加到[* document.links *](http://www.w3.org/html/wg/drafts/html/master/dom.html#dom-document-links)集合中,腳本鏈接不是。 – RobG 2014-08-27 12:19:58