Jquery 正在返回模块中的 prevObject

Jquery is returning prevObject in module

我正在使用 browserify 并将我的代码拆分成这样的模块 article

我 运行 遇到下面的问题,其中 "settings.button" 没有返回 jQuery object $('.burger') 而是返回 "prevObject" 。我在这里错过了什么吗?

感谢任何帮助。

'use strict';

var s,
    toggleNavigation = {

        settings: {
            button: $('.burger'),
            active: 'is-active'
        },

        init: function() {
            s = this.settings;
            this.bind();
        },

        bind: function() {
            s.button.on("click", function() {
                s.button.toggleClass(s.active);
            });

        }

    }

module.exports = toggleNavigation

可能在 $('.burger') 运行 时该元素尚不存在(文档加载时 运行 不存在),因此除了 prevObject 字段。

prevObject 字段用于链接 jQuery 选择器。如果您要使用某些东西来缩小选择范围,它将包含对另一个 DOM 元素的引用,例如:.filter().