html中a標簽href='#'與href='###'的區別分享
發表時間:2024-01-02 來源:明輝站整理相關軟件相關文章人氣:
[摘要]首先,<a> 標簽 + onclick={jscode} 是很常用的一種 js 運用方式,而不使用 href=javascript:{jscode} 是為了兼容多種瀏覽器對 <a> 標簽的解釋和處理不同。其次,使用 <a> 標簽 + onclick={jscod...
首先,<a> 標簽 + onclick='{jscode}' 是很常用的一種 js 運用方式,而不使用 href='javascript:{jscode}' 是為了兼容多種瀏覽器對 <a> 標簽的解釋和處理不同。其次,使用 <a> 標簽 + onclick='{jscode}' 時經常會加一個 href='###',而有時這個 href='###' 會被誤寫為 <a href='#'> 是因為使用者沒有理解 '#' 和 '###' 的區別。
簡單地說,就是說如果想定義一個空的鏈接,又不跳轉到頁面頭部,可以寫href="###"。詳細解釋就是'#' 是有特定意義的,如果 '#' 后有內容會被認為是一個標簽而從頁面找到相應標簽跳轉到該處,找不到時會跳到頁首, '###' 其實就是一個無意義的標簽指定,也就是一個 '#' 和不存在的標簽 '##' 的組合,頁面中找不到命名為 '##' 的 <a> 時該鏈接就不會發生跳轉,也就不會導致執行 onclick 中的內容時突然發生頁面跳到頁首的問題。'###' 只是一種使用者習慣,如果你愿意,可以隨便找一個跳轉不到的標簽作為命名。說白了"###" 就是一個不是錨點的字符串 瀏覽器找不到也不會跳到頁首,原理就是依賴了網頁的報錯機制,找不到就不做處理。
有些人說,不喜歡“###”因為他會改變鏈接。都是使用一直用javascript:void(0)或者javascript:。href="javascript:void(0);"但也有人說用href="javascript:void(0);"可能會有瀏覽器兼容問題。在做頁面時,如果想做一個鏈接點擊后不做任何事情,或者響應點擊而完成其他事情,可以設置其屬性 href = "#",但是,這樣會有一個問題,就是當頁面有滾動條時,點擊后會返回到頁面頂端,用戶體驗不好。
javascript:void(0)這種偽協議,少寫的好,如果你看過一些web標準的書就知道為什么了。 2.鏈接(href)直接使用javascript:void(0)在IE中可能會引起一些問題,比如:造成gif動畫停止播放等,所以,最安全的辦法還是使用“####”。為防止點擊鏈接后跳轉到頁首,onclick事件return false即可。
以上就是html中a標簽href='#'與href='###'的區別分享的詳細內容,更多請關注php中文網其它相關文章!
網站建設是一個廣義的術語,涵蓋了許多不同的技能和學科中所使用的生產和維護的網站。