在我的html <head>
中,我定义了以下<base>
:
<base href="/" target="_blank">
现在我无法链接到同一页面上带有ID的标签,例如:
<sup id="ref1" name="ref1"><a href="#fn1" target="_top">1</a></sup>
<p class="footnote" id="fn1" name="fn1">
<a href="#ref1" title="back" target="_top">↩</a>
</p>
指向ID的链接将我带回根目录而不是指定的ID。我可以以某种方式强制<a>
元素在当前文档中查找ID而无需删除href="/"
中的<base>
吗?
答案 0 :(得分:0)
尝试:
$(document).ready(function() {
var pathname = window.location.href.split('#')[0];
$('a[href^="#"]').each(function() {
var $this = $(this),
link = $this.attr('href');
$this.attr('href', pathname + link);
});
});
将修复所有链接或(没有jQuery)单个链接:
<a href="javascript:;" onclick="document.location.hash='anchor';">Anchor</a>
来源:Make anchor links refer to the current page when using <base>