固定菜单和窗口大小

时间:2014-03-14 09:54:07

标签: javascript jquery html

我们正在构建一个修复子菜单的功能,我必须根据窗口大小更改顶部值。

这是演示,但它没有按预期工作。

Demo

jQuery(window).resize(function () {
    if (jQuery(this).width() > 767) {
        jQuery("document").ready(function repositive() {
            jQuery('li.toolbar-destiny').hide();
            var nav = jQuery('.sub-menu');

            $(window).scroll(function () {
                if (jQuery(this).scrollTop() > 142) {
                    nav.addClass("f-nav");
                    jQuery('li.toolbar-destiny').show();
                } else {
                    nav.removeClass("f-nav");
                    jQuery('li.toolbar-destiny').hide();
                }
            });
        });
    } else {
        jQuery('li.toolbar-destiny').hide();
        var nav = jQuery('.sub-menu');

        jQuery(window).scroll(function () {
            if (jQuery(this).scrollTop() > 91) {
                nav.addClass("f-nav");
                jQuery('li.toolbar-destiny').show();
            } else {
                nav.removeClass("f-nav");
                jQuery('li.toolbar-destiny').hide();
            }
        });

    }
});

jQuery(window).resize(function () {
    repositive();
});

我可以知道不工作的原因以及如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

好的,我们解决了这个问题,这是演示:

Demo

jQuery(document).ready(function () {
    if (jQuery(this).width() > 767) {
        jQuery("document").ready(function repositive() {
            jQuery('li.toolbar-destiny').hide();
            var nav = jQuery('.sub-menu');

            $(window).scroll(function () {
                if (jQuery(this).scrollTop() > 142) {
                    nav.addClass("f-nav");
                    jQuery('li.toolbar-destiny').show();
                } else {
                    nav.removeClass("f-nav");
                    jQuery('li.toolbar-destiny').hide();
                }
            });
        });
    } else {
        jQuery('li.toolbar-destiny').hide();
        var nav = jQuery('.sub-menu');

        jQuery(window).scroll(function () {
            if (jQuery(this).scrollTop() > 91) {
                nav.addClass("f-nav");
                jQuery('li.toolbar-destiny').show();
            } else {
                nav.removeClass("f-nav");
                jQuery('li.toolbar-destiny').hide();
            }
        });

    }
});

希望这有助于其他人。