Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将零件粘在特定范围内_Javascript_Jquery_Html_Fixed - Fatal编程技术网

Javascript 将零件粘在特定范围内

Javascript 将零件粘在特定范围内,javascript,jquery,html,fixed,Javascript,Jquery,Html,Fixed,我有一个容器,它在一个特定点后粘在顶部。 但这对我来说还不够。 我在页面中有一个页脚,当屏幕很小时,木棍部分隐藏在页脚下。 我希望它停止在页脚顶部向下移动(停止固定为0,但固定为负数,即它们之间的减法)。 这是我的密码。 我应该为这个目标添加什么? 什么时候叫它? 重新调整大小? 准备好了吗? 等等 非常感谢 window.onscroll = function (event) { fixDiv(); }; function fixDiv() {

我有一个容器,它在一个特定点后粘在顶部。 但这对我来说还不够。 我在页面中有一个页脚,当屏幕很小时,木棍部分隐藏在页脚下。 我希望它停止在页脚顶部向下移动(停止固定为0,但固定为负数,即它们之间的减法)。 这是我的密码。 我应该为这个目标添加什么? 什么时候叫它? 重新调整大小? 准备好了吗? 等等

非常感谢

    window.onscroll = function (event) {
        fixDiv();
    };
    function fixDiv() {
        if (getBrowserHeight().width > 1284) {
            var $div = $("#Container");
            if ($(window).scrollTop() > $div.data("top")) {
                $('#Container').css({ 'position': 'fixed', 'top': '0' });
            }
            else {
                $('#Container').css({ 'position': 'static', 'top': 'auto' });
            }
        }
    }

    $(document).ready(function () {

        $("#Container").data("top", $("#Container").offset().top); 

    });
这会让你走的。 如果有什么事情不清楚,请不要介意寻求帮助

$(文档).ready(函数(){
$(窗口)。滚动(函数(){
var footerEl=$('footer').offset().top;
var footerTop=(footel-$(window.scrollTop());
var containerHeight=$('.container').height();
var footerHeight=$('footer').height();
console.log('footer',footerTop);
$('.container').removeClass('sticky');

如果(footerTop我已经尝试对代码进行尽可能少的更改,但是有更好的方法来绕过这个ie。使用类,如@mhx answer.Full JavaScript(抱歉,必须删除您的
getBrowserHeight()
,因为它没有定义):

…我添加了这个else if语句,以防它超出页脚顶部减去div的高度

else if ($footer.data("top") > $footer.data("top") - $div.height()) {
    $('#Container').css({ 'position': 'absolute', 'top': $footer.data("top") - $div.height() });
}
这是一把小提琴:

&& $(window).scrollTop() < $footer.data("top") - $div.height() 
else if ($footer.data("top") > $footer.data("top") - $div.height()) {
    $('#Container').css({ 'position': 'absolute', 'top': $footer.data("top") - $div.height() });
}