关于锚点跳转过度

下面是一个锚点跳转的方法:

疑问:为什么单独写一个$("body")或$("html"),为什么就没有过渡的效果,而两个写在一起却有,这是为什么?然道是说要body和html一起跑起来?


$(".list").bind('click', function(event) {

    event.preventDefault();

    var aimId = $(this).attr("href");

    console.log(aimId);

    var moveNum = $(aimId).offset().top;

    console.log(moveNum);

    console.log(document.body.scrollTop);

   


    $("body,html").animate({

           scrollTop : moveNum

    },1000);


  });


神不在的星期二
浏览 404回答 1
1回答

慕容森

我测试了下ie firfox chrome都可以的,这样写是考虑有可能滚动的是body,这种情况$("html")就没用了如下:html,body {    height: 100%;}html {    overflow: auto;}body {    overflow: auto;}检测页面滚动是谁在滚动$('body').on('scroll', function () {            console.log('body')        });$(window).on('scroll', function () {            console.log('window')        });
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript