如何在 jQuery 中实现平滑且按比例的同步滚动:Firefox 延迟问题的解决方案?
jQuery 中的同步滚动困境:实现平滑且成比例的滚动
处理不同大小的元素时,实现同步滚动可能是一个挑战。为了解决这个问题,您需要确定滚动内容的百分比并计算其他元素相应的scrollTop值。
在您的情况下,您可以使用以下公式:scrollTop / (scrollHeight - offsetHeight)。这会产生一个介于 0 和 1 之间的值,表示已滚动的元素的百分比。
此外,您可能会遇到 Firefox 中的滚动变得缓慢的问题。这是因为您当前的代码无意中创建了滚动事件的不间断循环。使用 off() 暂时解绑监听器,调整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 is insufficient. setTimeout( function(){ $other.on('scroll', sync ); },10); } $divs.on( 'scroll', sync);
登录后复制
这段代码确保按比例滚动,同时防止 Firefox 中滚动事件的无限循环。要查看工作演示,请访问此jsfiddle:http://jsfiddle.net/b75KZ/5/
以上是如何在 jQuery 中实现平滑且按比例的同步滚动:Firefox 延迟问题的解决方案?的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章
如何修复KB5055612无法在Windows 10中安装?
4 周前
By DDD
<🎜>:种植花园 - 完整的突变指南
3 周前
By DDD
<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
4 周前
By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前
By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

在本周的平台新闻综述中,Chrome引入了一个用于加载的新属性,Web开发人员的可访问性规范以及BBC Move

有很多分析平台可帮助您跟踪网站上的访问者和使用数据。也许最著名的是Google Analytics(广泛使用)
