我有位於頁面底部的DIV:如何跳轉到使用JavaScript放置頁面底部的特定div?
<div id="myDiv"></div>
我想去這個div執行我的JS-功能後。換句話說,我想讓我的網址變成myurl#myDiv
並轉到我的div。但沒有重新加載頁面。這可以如何使用JavaScript來完成?不幸的是,我還沒有找到這個問題的工作解決方案。我沒有使用任何JS庫和框架。
我有位於頁面底部的DIV:如何跳轉到使用JavaScript放置頁面底部的特定div?
<div id="myDiv"></div>
我想去這個div執行我的JS-功能後。換句話說,我想讓我的網址變成myurl#myDiv
並轉到我的div。但沒有重新加載頁面。這可以如何使用JavaScript來完成?不幸的是,我還沒有找到這個問題的工作解決方案。我沒有使用任何JS庫和框架。
嘗試窗口的位置設置到該ID的。瀏覽器將滾動到該元素。
window.location.hash = '#myDiv';
更好的使用location.hash –
是的,你說得對。然而,它在一個簡短的測試中使用了'location.href',儘管IE可能會窒息。 –
要滾動到一個特定的元素,使用,scrollIntoView,由IE6 +和真正的瀏覽器支持:
document.getElementById('myDiv').scrollIntoView();
上domready中檢查window.location.hash
,看是否有在URL中的哈希匹配您的文檔中的任何元素。
如果在文檔中#myDiv
鏈接,你將需要onclick
偵聽器添加到它們,手動執行滾動,按上面的代碼,並return false
避免鏈接#myDiv
以下。
+1'IE6 +和真實的瀏覽器':你是對的,IE 6不再是真正的瀏覽器_this day和age_) – ComFreek
的scrollIntoView(真)方法還接受參數指定是否對齊到頂部(真)或底部(假)。
大衛的答案是更好的解決方案,它*任何DOM元素(帶或不帶ID)都可以滾動到視圖中。*通過我的答案,您只能滾動到頁面上的ID /錨點。 –