您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用jQuery同步滚动?

使用jQuery同步滚动?

您可以element.scrollTop / (element.scrollHeight - element.offsetHeight)用来获取百分比(它将是0和之间的一个1)。因此,您可以将其他元素(.scrollHeight - .offsetHeight)与此值乘以进行比例滚动。

为了避免在循环中触发侦听器,您可以暂时取消绑定该侦听器,设置scrollTop并重新绑定。

var $divs = $('#div1, #div2');
var sync = function(e){
    var $other = $divs.not(this).off('scroll'), other = $other.get(0);
    var percentage = this.scrollTop / (this.scrollHeight - this.offsetHeight);
    other.scrollTop = percentage * (other.scrollHeight - other.offsetHeight);
    // Firefox workaround. Rebinding without delay isn't enough.
    setTimeout( function(){ $other.on('scroll', sync ); },10);
}
$divs.on( 'scroll', sync);
JS 2022/1/1 18:15:12 有603人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶