【问题标题】:Fixed on top sidebar prevent bottom hover固定在顶部侧边栏上,防止底部悬停
【发布时间】:2014-09-13 09:31:47
【问题描述】:

当滚动条从顶部到达某个点时,我已经修复了侧边栏的位置。 但是当我到达页面底部时出现问题,侧边栏位于页脚 (http://i.stack.imgur.com/ZwjDK.jpg)。 我需要将侧边栏从 X 固定到 Y,当我到达 Y 时,她继续滚动页面的其余部分,但我不知道该怎么做。

我尝试过类似的方法,但它不起作用:/

    $(function() {
    var NosSortiesTop = $('#NosSorties').offset().top - 50;
    var StickyNosSorties = function(){
        var ScrollTop = $(window).scrollTop();
        var NosSortiesWidth = $('#NosSorties').width();
        var NosSortiesPadding = (NosSortiesWidth / 100) * 4.4;
        if (ScrollTop > NosSortiesTop) { 
            $('#NosSorties').css({ 'position': 'fixed', 'top':50 });
        } else {
            $('#NosSorties').css({ 'position': 'relative', 'top':'inherit', 'width': NosSortiesWidth, 'padding-left': NosSortiesPadding, 'padding-right': NosSortiesPadding }); 
        }   
    };

    StickyNosSorties();
    $(window).scroll(function() {
         StickyNosSorties();
    });

});

有人知道我该如何解决这个问题吗?

【问题讨论】:

  • JSFiddle 或演示站点在这种情况下会很有帮助,因为这个问题有点难以理解。

标签: jquery html scroll fixed


【解决方案1】:

JQuery followTo

var objWindow = this;
$.fn.followTo = function ( pos ) {
    var $this = this,
        $window = $(objWindow);

    $window.scroll(function(e){
        if ($window.scrollTop() > pos) {
            $this.css({
                position: 'absolute',
                top: pos
            });
        } else {
            $this.css({
                position: 'fixed',
                top: 'auto'
            });
        }
    });
};

$.fn.followTo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-04
    • 2021-06-14
    • 1970-01-01
    • 2018-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多