利用jquery禁止外层滚动条的滚动

利用jquery禁止外层滚动条的滚动

2023年7月9日发(作者:)

利⽤jquery禁⽌外层滚动条的滚动前⾔通常情况下,当内部滚动条滚动到两端时,再接着滚动时外层的滚动条就会跟着滚动;可是有时我们希望⽤户只能滚动当前区域,⽽不触发外层(window)的滚动条,离开当前区域后,才能滚动外层的滚动条。因为⽤户可能⼀不⼩⼼滚动的幅度过⼤了,导致当前区域离开可视区域。在jquery中,滚动事件是scroll,⽽这个事件是不能阻⽌冒泡和阻⽌默认事件的。假如我们设定要禁⽌window的滚动条,我采取的策略是:当⿏标进⼊到当前区域后,则window的滚动条的⾼度始终是⿏标进⼊前的⾼度如下的代码:

$(function () { var scrollTop = -1; // ⿏标进⼊到区域后,则存储当前window滚动条的⾼度 $('#main').hover(function(){ scrollTop = $(window).scrollTop(); }, function(){ scrollTop = -1; }); // ⿏标进⼊到区域后,则强制window滚动条的⾼度 $(window).scroll(function(){ scrollTop!==-1 && $(this).scrollTop(scrollTop); })})从上⾯的代码可以看到,我并没有阻⽌window滚动条的事件,⽽是⽤户每次滚动时,都会重新进⾏赋值。总结以上就是这篇⽂章的全部内容了,希望本⽂的内容对⼤家的学习或者⼯作能带来⼀定的帮助,当然,或许还有更好的⽅法,欢迎⼤家提供,谢谢!

发布者:admin,转转请注明出处:http://www.yc00.com/web/1688850638a176553.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信