我习惯在开发过程中使用href="#"
作为占位符链接,这样如果你不小心点击它,没有任何反应,它不会在测试页面时跳转页面,即你确切知道哪个是占位符和这是一个断开的链接。
但是,当在头部定义baseurl时,href =“#”将获取baseurl地址而不是当前页面,并在结尾处附加#。这会导致占位符链接始终加载索引页。烦。
<!doctype html>
<html>
<head>
<base href="http://localhost">
</head>
<body>
<p><a href="#">placeholder # only</a></p>
<p><a href="">empty string</a></p>
</body>
</html>
除了指定<a>
的{{1}}中的完整路径外,还有办法取回“占位符”行为吗?
答案 0 :(得分:1)
href="javascript:void(0);"
试试这个,所以点击页面不会跳转也不会刷新
答案 1 :(得分:0)
这可能比任何事情更糟糕,但你总是可以忽略来自锚标记的点击:
$('body').on('click', 'a[href="#"]', function(e) { e.preventDefault(); });
答案 2 :(得分:0)
如果您目前正在开发中,我建议删除您的基本代码。 它定义了该页面上所有锚标记的行为。欲获得更多信息 : http://www.w3schools.com/tags/tag_base.asp
答案 3 :(得分:0)
使用javascript完成
function onClick(event) {
document.getElementById('id').scrollIntoView({
behavior: 'smooth'
});
}