Javascript 在链接中使用哈希时取消页面滚动。

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

我用jQuery创建了标签。我需要能够链接到准确的标签。完成了。(下面的代码)我面临的问题是切换选项卡后无法阻止页面滚动。如何禁用滚动但仍使用哈希

<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();
});