我有一个链接
<a href="#">Text</a>
当我点击此链接时,我的页面总是向上滚动到顶部。我如何管理它,当我clik此链接时,我的页面不会向上滚动到顶部。
的Javascript?什么
谢谢
答案 0 :(得分:5)
你可以添加一些javascript来拒绝默认行为。
function myClickHandler(e) {
// your code here
// ...
// new code
if(e.preventDefault){ //firefox,chrome
e.preventDefault();
}
else { // ie
return false;
}
}
如果您提供更多详细信息/示例代码,我们可以为您提供更具体的答案。
答案 1 :(得分:3)
不确定你要做什么,但也许你在考虑:
<a href="JavaScript:void(0);" >Text</a>
那什么都不做。
答案 2 :(得分:1)
您可能希望发布执行此操作的链接示例。我的猜测是因为你没有为链接设置一个href,或者你用“#someId”结束链接href
并不是它滚动到页面顶部,而是刷新页面。
顶部链接的示例:
<a href="#header">Some Link</a>
<a href="#">Somewhere</a> <!-- will refresh and you end up at the top -->
修改强>
啊......既然你已经提供了链接......那就是问题的哈希#
。
为了避免这种情况发生(我猜你想在链接上做一些Javascript而你正试图让它做某事......)那么你需要在你的javascript中使用return false;
。这将从链接返回false,不会跟随它。
答案 3 :(得分:0)
<body>
<h1 id="top">First Headline</h1>
<!-- your document here-->
<a href="#top">go to Top</a>
</body>
使用Javascript,你可以添加一些平滑,如慢慢向上滚动。 HTML Links
答案 4 :(得分:0)
这是因为您只有哈希#
作为“URL”。它使浏览器跳转到页面的顶部(如果你指定的话,它通常会跳转到具有相应ID的元素。)
但如果您不使用此链接,目的是什么?
答案 5 :(得分:0)
浏览器将[relative] URL #
视为页面顶部。更改链接的href
属性以引用其他资源,或添加阻止默认操作的click
事件处理程序。更好的是,如果您打算将其作为触发click
事件的按钮,请将<a>
标记替换为<button>
,这在语义上更正确。