jQuery 覆盖插件中的数据变量



我尝试使用这样的数据变量... $this.data() .
但是我在覆盖项目时遇到问题。

我想使用它来获取有关插件的一些控制和状态信息。

(function($) {
    $.fn.myPlugin = function(options) {
        var $this = $(this);
        var set = $.extend(true, {}, $.fn.meSlideMenu.defaults, options);
        $this.data({
            'menu': {
                'expand': false,
                'initDone': false,
                'runFirtTime': true
            },
            'item': {
                'clicked': false,
                'lastItem': 'Nothing'
            },
            'button': {
                'isVisible': false,
                'clicked': false
            }
        });
        /* some more stuff */
        $this.data('button').isVisible = true; /* both doesn't work */
        $this.data().button.isVisible = true;
        /* some stuff again */
        $.fn.myPlugin.defaults = {
            'debug': false,
            'name': 'meSlideMenu',
            'speed': 195,
        };
    };
})(jQuery);

但最好使用

window.console.debug( $this.data('menu') )

而不是

window.console.debug( $this.data() )

最新更新