1 回答

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超8個(gè)贊
有一個(gè)錨點(diǎn)
<a?href="somefunc()">Click?Me</a>
將被解釋為“嘗試導(dǎo)航到路由 somefunc()”。所以你會(huì)被送到http://www.example.com/somefunc()
。http:
您所在的當(dāng)前頁面的協(xié)議在哪里。
The?javascript:
,很像 thehttp:
和 themailto:
和 thetel:
以及任何其他類似的前綴是要使用的協(xié)議。如果您將其關(guān)閉,則將其留給瀏覽器的默認(rèn)行為。對(duì)于相對(duì) URL(這是你寫的),它將默認(rèn)為http:
(感謝 Barmar)
您不需要包括協(xié)議(默認(rèn)情況下瀏覽器使用 HTTP)或端口(僅當(dāng)目標(biāo) Web 服務(wù)器使用一些不常見的端口時(shí)才需要),但 URL 的所有其他部分都是必需的。
請(qǐng)參閱<a/>
標(biāo)簽href
:
href
超鏈接指向的 URL。鏈接不限于基于 HTTP 的 URL——它們可以使用瀏覽器支持的任何 URL 方案:
包含片段 URL 的頁面部分
帶有媒體片段的媒體文件
帶有 tel: URL 的電話號(hào)碼
帶有 mailto: URL 的電子郵件地址
雖然 Web 瀏覽器可能不支持其他 URL 方案,但網(wǎng)站可以使用 registerProtocolHandler()
但是,如果您打算調(diào)用某些 JavaScript 函數(shù),那么您href
無論如何都不應(yīng)該使用,這就是目的onclick
,或者更好的是addEventListener()
,如果錨點(diǎn)不會(huì)“帶您到任何地方”,請(qǐng)使用 a<button/>
以獲得可訪問性。
錨元素經(jīng)常被濫用為假按鈕,方法是將它們?cè)O(shè)置?
href
為#
或javascript:void(0)
以阻止頁面刷新,然后監(jiān)聽它們的click
事件。這些虛假
href
值會(huì)在復(fù)制/拖動(dòng)鏈接、在新選項(xiàng)卡/窗口中打開鏈接、添加書簽或加載 JavaScript、錯(cuò)誤或禁用時(shí)導(dǎo)致意外行為。它們還會(huì)將不正確的語義傳達(dá)給屏幕閱讀器等輔助技術(shù)。使用一個(gè)
<button>
代替。通常,您應(yīng)該只使用超鏈接導(dǎo)航到真實(shí)的 URL。
添加回答
舉報(bào)