【问题标题】:adding css fixed position on scroll, when element reaches top of window当元素到达窗口顶部时,在滚动上添加css固定位置
【发布时间】:2014-07-30 00:52:41
【问题描述】:

我正在尝试修复一个元素 win scrollTop() 达到某个值。这很好用,但问题是元素是表格的一部分,表格也超出了窗口宽度。固定元素是表格标题,但是当我滚动 x 时,我也需要“固定”元素来滚动它。我不确定如何实现这一点。例如窗口宽度可能只有 1200,而表格宽度可能是 2000。因此我们没有看到 800px 的固定标题。

此外,当我向上滚动时,该元素也由于某种原因保持固定,即使我正在删除该类。

JQUERY

$(window).scroll(function() {
    header = $('#header_worked').offset().top;
    win = $(window).scrollTop();
    if(win>header) $('#header_worked').addClass('fixed');
    if(win<header) $('#header_worked').removeClass('fixed');
});

如果有任何建议,请告诉我。我有它在JSFIDDLE

【问题讨论】:

    标签: jquery


    【解决方案1】:

    您可以在滚动时更改边距,以便固定元素滚动 x 使用此代码:

    $(window).scroll(function() {
        margin = $(window).scrollLeft();
        $('#header_worked').css('margin-left',-margin);
    });
    

    关于添加和删除类,现在不会出现第二个删除类的条件,因为元素是固定的。当你希望它再次成为相对时,你将需要获取另一个参考点。

    【讨论】:

      猜你喜欢
      • 2011-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多