div同步滚动怎么消除偏差

代码如下:

$("#div1").scroll(function(){
        $("#div").scrollLeft($(this).scrollLeft());
};

发现两个div滚动的距离有偏差,分别打印两个div的scrollleft.发现从一开始就差别很大。
图片描述

阅读 3.1k
2 个回答

我的宽度也一样,在一个盒子里面,width=100%图片描述

我找到原因了,下面的div有垂直滚动条。是这个的偏差。

速度没有什么差别,只要他们的 width 是一样的。
代码:

<!doctype html>
<html>
<head>
    <meta charset='utf-8'>
    <meta name="viewport" content="width = device-width,maximum-scale=1,minimum-scale=1,user-scalable=no,initial-scale=1">
    <title>test</title>
</head>
<body>
<div>
    <div class="div" style="width:100vw; overflow: scroll">
        <div style="width:3400px">11</div>
    </div>
    <div class=div1 style="width:100vw; overflow: scroll">
        <div style="width:3400px;">11</div>
    </div>
</div>

<script src="https://cdn.bootcss.com/jquery/1.12.2/jquery.min.js"></script>
<script>
    $(".div1").scroll(function(){
        $(".div").scrollLeft($(this).scrollLeft());
    })
</script>
</body>
</html>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题