jquery – Bootstrap 3贴上插件点击bug

前端之家收集整理的这篇文章主要介绍了jquery – Bootstrap 3贴上插件点击bug前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
TL; DR:这是一个小提琴,点击或滚动查看错误http://jsfiddle.net/Tetaxa/6cC9w/

我有一个有两列的页面,右边是一个附加的div(工具栏),左边是一些内容.当内容高于工具栏时,效果非常好.但是,当工具栏较高时,我会发现一些奇怪的行为.滚动并点击,工具栏的固定状态切换,内容崩溃.

这是相关的html:

<div class="row">
    <div class="col-xs-8">
    <p>Lorem ipsum dolor</p>
    </div>
    <div class="col-xs-4">
        <div class="affixed-div">
            Affixed
        </div>
    </div>
</div>

这是我的javascript.计算底部以防止工具栏超出底部内容.

var div = $('.affixed-div');
var row = div.closest('.row');

div.affix({
    offset: {
        bottom: $(document).height() - row.offset().top - row.height(),top: div.offset().top
    }
});

这里是自定义的CSS:

.affix {
    top: 0;
}

.affix-bottom {
    position: relative;
}

我在这里做错了吗?这是一个错误还是按照预期工作?我必须手动检查行的高度,只有在内容较高的情况下才贴上工具栏,还是有更好的方法来避免?我应该提交错误报告吗?

解决方法

这可能是一个引导错误.
即使现在这个bug也存在.

错误
在Bootstrap插件Affix.js,Affix.prototype.getState方法

if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false

解决这个问题.替换为以下代码.

if (offsetTop != null && this.affixed == 'top') return scrollTop <= offsetTop ? 'top' : false

所有这一切可能是我错误的想法

原文链接:https://www.f2er.com/jquery/180127.html

猜你在找的jQuery相关文章