Javascript 我需要帮助弄清楚如何切换一个元素一旦垂直高度的窗口是滚动
当我使用javascript向下滚动200px时,我试图将div从相对切换到固定。当我从窗口顶部达到200px时,我的div应该切换到fixed。当我在离顶部200px以上时,它应该回到相对位置。有人知道怎么做吗?比如:Javascript 我需要帮助弄清楚如何切换一个元素一旦垂直高度的窗口是滚动,javascript,jquery,height,toggle,sticky-windows,Javascript,Jquery,Height,Toggle,Sticky Windows,当我使用javascript向下滚动200px时,我试图将div从相对切换到固定。当我从窗口顶部达到200px时,我的div应该切换到fixed。当我在离顶部200px以上时,它应该回到相对位置。有人知道怎么做吗?比如: $(window).on('scroll', function() { $("#myDivID").css({ position: $(this).scrollTop()<200?'relative':'fixed', top: $(t
$(window).on('scroll', function() {
$("#myDivID").css({
position: $(this).scrollTop()<200?'relative':'fixed',
top: $(this).scrollTop()<200?'200px':'0px'
});
});
$(窗口).on('scroll',function(){
$(“#myDivID”).css({
位置:$(this).scrollTop()我知道至少有几个插件可以这样做。我记不起上次看到的插件的名称,但我自己写了一个:
你这样使用它:
$('#my-element').fixedIfNeeded();
有一个可选参数指定该元素是否应在到达另一个元素(例如页脚)之前停止被修复:
哇,太快了。谢谢!我该如何“重置顶部”?我建议之前缓存对$(“#myDivID”)的引用
,否则每次滚动事件发生时,您都会重新评估,例如,如果您的元素的css top设置为200px
,并且您向下滚动,直到元素一直位于屏幕顶部,然后您突然发现更改为“位置”fixed
,您将看到元素从顶部跳到200px,因为现在它不再在文档流中。在这种情况下,您还必须将顶部位置更改为零,但具体数字取决于您的设计。@Fabriziocarderan-它在每个卷轴上设置元素样式属性,没有需要为此缓存选择器!
$('#my-element').fixedIfNeeded('#footer');