有两个p,我想在让其中一个滚动条滚动的时候,让另一个滚动条也相应的滚动。
我尝试了以下这样的代码
let preview = document.querySelector('#preview');
let editor = document.querySelector('#editor');
preview.addEventListener('scroll', (e)=> {
e.stopPropagation();
editor.scrollTop = preview.scrollTop;
});
editor.addEventListener('scroll', (e)=> {
e.stopPropagation();
preview.scrollTop = editor.scrollTop;
});
但是这样的话,用鼠标去拖动滚动条能够达到我想要的效果,但是如果用鼠标中键滑动的话,会相当的卡顿,无法滚动。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
A滚动->emit("Bfollow")->B滚动
B滚动->emit("Afollow")->A滚动
滚动条滑动事件触发过于频繁,每次函数涉及到页面重排(layout)重绘(paint),导致页面卡顿。
建议使用采用节流(throttle)方式,处理过于频繁的事件。
代码比较糙,可适当修改