Javascript 滚动到anchor JS不工作

Javascript 滚动到anchor JS不工作,javascript,html,Javascript,Html,因此,我试图实现的是标题所说的。到目前为止,我已经浏览了相当多的帖子和网站,但就是无法让它正常工作 我可以看到不同的脚本在有时间滚动编辑时工作。它只是没有平滑地滚动,在那之后它会跳转到锚点 我目前使用的是: $(文档).ready(函数(){ var hashTagActive=“”; $(“.scroll”)。单击(函数(事件){ 如果(hashTagActive!=this.hash){//这将防止用户多次单击同一链接以冻结滚动。 event.preventDefault(); //计算

因此,我试图实现的是标题所说的。到目前为止,我已经浏览了相当多的帖子和网站,但就是无法让它正常工作

我可以看到不同的脚本在有时间滚动编辑时工作。它只是没有平滑地滚动,在那之后它会跳转到锚点

我目前使用的是:


$(文档).ready(函数(){
var hashTagActive=“”;
$(“.scroll”)。单击(函数(事件){
如果(hashTagActive!=this.hash){//这将防止用户多次单击同一链接以冻结滚动。
event.preventDefault();
//计算目的地
var-dest=0;
if($(this.hash).offset().top>$(document.height()-$(window.height()){
dest=$(文档).height()-$(窗口).height();
}否则{
dest=$(this.hash).offset().top;
}
//去目的地
$('html,body')。设置动画({
滚动顶端:dest
},2000,'swing',函数(){
hashTagActive=“”;
});
hashTagActive=this.hash;
}
});
});
特维图拉 特克斯蒂

西武波加 图洛萨

蒂拉 特克斯蒂

&抄袭;马尔科·阿霍拉


您忘记将您的类名
滚动
添加到您希望平滑滚动的前三个锚定标记中

  <li><a href="#1" class="scroll">Tervetuloa</a></li>
    <li><a href="#2" class="scroll">Sivupohjia</a></li>
    <li><a href="#3" class="scroll">Tilaa sivut</a></li>
  • 下面的片段

    
    $(文档).ready(函数(){
    var hashTagActive=“”;
    $(“.scroll”)。单击(函数(事件){
    如果(hashTagActive!=this.hash){//这将防止用户多次单击同一链接以冻结滚动。
    event.preventDefault();
    //计算目的地
    var-dest=0;
    if($(this.hash).offset().top>$(document.height()-$(window.height()){
    dest=$(文档).height()-$(窗口).height();
    }否则{
    dest=$(this.hash).offset().top;
    }
    //去目的地
    $('html,body')。设置动画({
    滚动顶端:dest
    },2000,'swing',函数(){
    hashTagActive=“”;
    });
    hashTagActive=this.hash;
    }
    });
    });
    
    特维图拉 特克斯蒂

    西武波加 图洛萨

    蒂拉 特克斯蒂

    &抄袭;马尔科·阿霍拉


    您忘记将您的类名
    滚动
    添加到您希望平滑滚动的前三个锚定标记中

      <li><a href="#1" class="scroll">Tervetuloa</a></li>
        <li><a href="#2" class="scroll">Sivupohjia</a></li>
        <li><a href="#3" class="scroll">Tilaa sivut</a></li>
    
  • 下面的片段

    
    $(文档).ready(函数(){
    var hashTagActive=“”;
    $(“.scroll”)。单击(函数(事件){
    如果(hashTagActive!=this.hash){//这将防止用户多次单击同一链接以冻结滚动。
    event.preventDefault();
    //计算目的地
    var-dest=0;
    if($(this.hash).offset().top>$(document.height()-$(window.height()){
    dest=$(文档).height()-$(窗口).height();
    }否则{
    dest=$(this.hash).offset().top;
    }
    //去目的地
    $('html,body')。设置动画({
    滚动顶端:dest
    },2000,'swing',函数(){
    hashTagActive=“”;
    });
    hashTagActive=this.hash;
    }
    });
    });
    
    特维图拉 特克斯蒂

    西武波加 图洛萨

    蒂拉 特克斯蒂

    &抄袭;马尔科·阿霍拉


    谢谢您的回复。我现在可以看到它在您的代码片段上工作,但当我在本地或web服务器上尝试它时,它不工作。那么,我的RB Pi是否缺少一个模块或什么?我的网站可以在这里找到:是的!Jquery脚本!add似乎修复了脚本无法运行的问题。非常感谢。现在页面结构肯定有问题,因为它在手机上测试时可以正常工作,但在电脑上却不行。我可以看到它在手机上测试时滚动缓慢。只是也不会一直到锚那里。在电脑上,我仍然无法让它工作。必须双击链接才能将其定位到正确的锚点。不管怎样,这解决了最初的问题,我会设法解决其余的问题。再次感谢你!哦,好的,有点更新。我让它工作了。我在容器上使用了overflow-y:scroll,但现在我删除了它并添加了位置:fixed to navbar和footer。现在很有魅力。再次感谢您!对于像我这样的新手来说,这让我的头发变得灰白。如果符合你的要求,请随意接受答案:D:D谢谢你的回复。我现在可以看到它在您的代码片段上工作,但当我在本地或web服务器上尝试它时,它不工作。我也失踪了