Jquery 仅当有滚动条且您正在向下滚动时才应用css
这是一个有趣的问题,我真的想知道这是否可能。我有一个可伸缩的div,内容会不断地进出,有时滚动条是必要的,有时不是 在这些情况下,一旦开始向下滚动,就有必要,我想在其上添加一个上边框,以表示与周围内容的分离 有没有css或jQuery解决方案 我的html只是Jquery 仅当有滚动条且您正在向下滚动时才应用css,jquery,css,Jquery,Css,这是一个有趣的问题,我真的想知道这是否可能。我有一个可伸缩的div,内容会不断地进出,有时滚动条是必要的,有时不是 在这些情况下,一旦开始向下滚动,就有必要,我想在其上添加一个上边框,以表示与周围内容的分离 有没有css或jQuery解决方案 我的html只是 <div class="scrollableDiv"> <p>Content</p> </div> 向div添加一个id属性,然后通过jQuery添加一个css类(如果有) $('my
<div class="scrollableDiv">
<p>Content</p>
</div>
向div添加一个
id
属性,然后通过jQuery添加一个css类(如果有)
$('myId').addClass('applytoporder')代码>
根据您强调的要求更新:
正如Patrick在我制作幻灯片时提到的,您可以使用滚动处理程序 在jquery中,侦听器
是.on(“滚动”,处理程序)
的快捷方式
当用户滚动到元素中的其他位置时,将向元素发送滚动事件。它适用于窗口对象,但也适用于可滚动的框架和元素,溢出CSS属性设置为滚动(或当元素的显式高度或宽度小于其内容的高度或宽度时自动)
换句话说,当用户滚动一个带有滚动条的div时,它将触发该div
但是,
…诸如mousemove
或scroll之类的高频事件每秒可以触发数十次,在这种情况下,明智地使用事件变得更加重要
您提到了向下滚动,这需要在事件句柄之间进行计算和存储。这会使您面临使用幼稚的滚动处理程序损害性能的危险
我建议采取以下办法:
不要在.scroll
处理程序本身中进行工作,只需将其用作启动工作的催化剂即可
让滚动处理程序自行移除,这样一旦确定事件是向下滚动,它就不会一直触发
相反,设置超时以重新检查用户是否仍在向下滚动
如果他们停止了滚动,请从相关类中删除css,并将滚动处理程序重新添加到相关DOM元素中,这样如果他们再次滚动,您就可以继续了
我看过那篇文章,它确实是用纯js完成的,我真的在寻找jQuery…我试图确定它们是否已经开始向下滚动
.scrollableDiv{
height:42em;
overflow-x:hidden;
min-height:42em;
}