繁体   English   中英

防止滚动事件

[英]Preventing scroll event

设置scrollTop属性时,有什么方法可以防止触发onscroll事件?

var a = $(".elem");
a.scrollTop(100); // will fire onScroll

谢谢。

这段代码有点骇人听闻,但可以完成工作:

var p1 = $('.one'), p2 = $('.two');
//var lock;
$('p').scroll(function() {
    //if (lock) return;
    //lock = true;
    var scrollTop = $(this).scrollTop();
    var other = $(this).hasClass('one') ? p2 : p1;
    other.scrollTop(300 - scrollTop);
    console.log('To:', 300 - scrollTop);
    //lock = false;
});​

一个基本的假设,我们似乎都提出的是,该事件将在同一时间运行,但仔细观察,我们认识到的Javascript运行在一个单独的线程,这意味着他们将不能同时运行。 因此,注释掉的锁定功能是无用的。 如果您只是想同步滚动,则上面的代码应该可以正常工作,但是老实说,我不太确定如何从那里继续。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM