可能重複使用時,頂部:
How do I stop a web page from scrolling to the top when a link is clicked that triggers javascript?與HREF = 「#」 滾動頁面鏈接使用jQuery的slideToggle
我使用jQuery的的slideToggle顯示/隱藏的div。 控制滑動的元素是文本鏈接(< \ a>中的一些文本),它具有href =「#」,因此它看起來像鏈接(下劃線,光標更改)。
問題是,當鏈接被點擊時,除了滑動效果,頁面滾動到頂部爲 。
我試着用href =「」替換href =「#」,但是禁用了div顯示/隱藏效果。 我想我可以添加到標籤名稱=「somename」,然後將href設置爲href =「#somename」 但我寧願不使用這樣的技巧。
爲什麼href =「#」將頁面滾動到頂端?
任何想法,將不勝感激
謝謝大家的回答。 我使用了返回false,它完美地工作 stackoverflow是驚人的! – samoyed 2010-01-08 10:22:42
優秀的解決方案thenduks,爲我節省了很多麻煩=) – 2010-11-12 09:38:44
'return false;'不是正確的處理方法。因此,開發者往往懶懶地在事件處理程序結束時拋出「返回false」,而不理解此行爲的後果。沒有理由阻止事件的傳播。您所需要做的就是防止用戶代理的默認操作。因此,'preventDefault()'是在這裏使用的正確函數。 – 2012-11-21 15:09:20