Javascript 在链接中使用哈希时取消页面滚动。
我用jQuery创建了标签。我需要能够链接到准确的标签。完成了。(下面的代码)我面临的问题是切换选项卡后无法阻止页面滚动。如何禁用滚动但仍使用哈希Javascript 在链接中使用哈希时取消页面滚动。,javascript,jquery,Javascript,Jquery,我用jQuery创建了标签。我需要能够链接到准确的标签。完成了。(下面的代码)我面临的问题是切换选项卡后无法阻止页面滚动。如何禁用滚动但仍使用哈希 <ul class="tabs group"> <li> <a id="komp-link" class="switch" href="#komplekti">Komplekti</a> </li> <li> <a id="inter
<ul class="tabs group">
<li>
<a id="komp-link" class="switch" href="#komplekti">Komplekti</a>
</li>
<li>
<a id="intern-link" class="switch" href="#internets">Internets</a>
</li>
<li>
<a id="iptv-link" class="switch" href="#iptelevizija">IP Televizija</a>
</li>
</ul>
<div id="komplekti">content 1</div>
<div id="internets">content 2</div>
<div id="iptelevizija">content 3</div>
//启用链接到精确选项卡
if(window.location.hash) {
var getHash = window.location.hash;
console.log(getHash)
$(getHash).show();
}
使用
event.preventDefault()
:
不过,您应该能够简化代码
<ul class="tabs group">
<li>
<a id="komp-link" class="switch" href="#komplekti">Komplekti</a>
</li>
<li>
<a id="intern-link" class="switch" href="#internets">Internets</a>
</li>
<li>
<a id="iptv-link" class="switch" href="#iptelevizija">IP Televizija</a>
</li>
</ul>
<div id="komplekti" class="tab">content 1</div>
<div id="internets" class="tab">content 2</div>
<div id="iptelevizija" class="tab">content 3</div>
好的,我找到了决定。
最好且最简单的方法是使用-hashchange事件 请提供我发现的类似问题,但我不明白如何在我的情况下实施它。。。给你
$('#komp-link').click(function(e){
e.preventDefault();
//...
});
<ul class="tabs group">
<li>
<a id="komp-link" class="switch" href="#komplekti">Komplekti</a>
</li>
<li>
<a id="intern-link" class="switch" href="#internets">Internets</a>
</li>
<li>
<a id="iptv-link" class="switch" href="#iptelevizija">IP Televizija</a>
</li>
</ul>
<div id="komplekti" class="tab">content 1</div>
<div id="internets" class="tab">content 2</div>
<div id="iptelevizija" class="tab">content 3</div>
$('.switch').click(function(e) {
e.preventDefault();
$('.tab').hide();
$($(this).href()).show();
});