为什么此滚动脚本不能在同一页面上使用?

时间:2018-09-01 10:23:20

标签: javascript jquery scroll

我正在尝试为同一页面的href =“#section4”或另一页面的href =“ services.html#services4”实施滚动。不确定为什么该脚本仅适用于其他页面:

if (window.location.hash)
    scroll(0,0);
// takes care of some browsers issue
setTimeout(function(){scroll(0,0);},1);

if(window.location.hash){
    // smooth scroll to the anchor id
    $('html,body').animate({
        scrollTop:$(window.location.hash).offset().top + 'px'
        },1000,'swing');
    }

$(function(){
  //your current click function
  $('.scroll').on('click',function(e){
      e.preventDefault();
      $('html,body').animate({
          scrollTop:$($(this).attr('href')).offset().top + 'px'
      },1000,'swing');
  });
});

当我重新加载页面时,它适用于同一页面,但是我不希望这种情况发生,因为我不希望页面在移动数据上苦苦挣扎。很奇怪,似乎只是忽略了这一部分:

if(window.location.hash){
    // smooth scroll to the anchor id
    $('html,body').animate({
        scrollTop:$(window.location.hash).offset().top + 'px'
        },1000,'swing');
    }

0 个答案:

没有答案