看起來像一個愚蠢的問題,但我不能爲我的生活告訴。我剛在上一個HTML文件:帶點「#」符號的html鏈接是否會導致頁面刷新時點擊?
<a href="#">hello</a>
當我點擊它,它附加散列符號本網址的結尾和我的肉眼的頁面似乎並不被重裝。
這是正確的還是頁面實際重新加載?
看起來像一個愚蠢的問題,但我不能爲我的生活告訴。我剛在上一個HTML文件:帶點「#」符號的html鏈接是否會導致頁面刷新時點擊?
<a href="#">hello</a>
當我點擊它,它附加散列符號本網址的結尾和我的肉眼的頁面似乎並不被重裝。
這是正確的還是頁面實際重新加載?
不,頁面不會重新加載。更糟糕的是,頁面將滾動到頂部。
這裏的更多信息比你想: http://dev.w3.org/html5/spec/Overview.html#scroll-to-fragid
在一個鏈接#是一個地方的鏈接在當前頁面(見link「name屬性」)。它通常是類似於維基百科中使用的#sectionname
URL中的散列定義了一個片段。 URI中片段的用途定義如下:http://labs.apache.org/webarch/uri/rfc/rfc3986.html#fragment。
URI可以用於更多的代理而不僅僅是瀏覽器,但是在Web環境中,資源用「頁面」標識,片段標識的子資源是頁面的一部分,並且沒有「旅行到服務器「加載一個頁面。
瀏覽器可以在頁面滾動到片段時自由迴流頁面,但不需要「重新加載」該術語通常所理解的內容。
只要他們在頁面上查看沒有。如果您點擊指向example.com/someOtherPage.html#someTag
等其他頁面的鏈接,它會將您帶到新頁面的那一部分。
很多較舊的網站使用了真正的長頁面,並且只是從一個元素到另一個元素有鏈接,因爲速度很慢,這種方式下,一旦頁面加載,您只需從一個部分跳到另一個部分而不加載。