Javascript jQuery UI小部件工厂和原型?

Javascript jQuery UI小部件工厂和原型?,javascript,jquery,jquery-ui,jquery-ui-widget-factory,Javascript,Jquery,Jquery Ui,Jquery Ui Widget Factory,使用jQueryUI小部件工厂,如何设置在插件的所有实例中都具有相同值的属性?(因此,如果该值在一个实例中更改,则会在所有实例中更改。) 乙二醇 一种方法是将值存储在一个闭包中,如下所示: (function () { var value = 0; $.widget('my.plugin', { _create: function () { value++; }, getValue: function ()

使用jQueryUI小部件工厂,如何设置在插件的所有实例中都具有相同值的属性?(因此,如果该值在一个实例中更改,则会在所有实例中更改。)

乙二醇


一种方法是将值存储在一个闭包中,如下所示:

(function () {
    var value = 0;

    $.widget('my.plugin', {
        _create: function () {
            value++;
        },
        getValue: function () {
            return value;
        }
    });
})();

$('.element').plugin();
$('.second-element').plugin();

$('.element').plugin('getValue'); // 2

一种方法是将值存储在一个闭包中,如下所示:

(function () {
    var value = 0;

    $.widget('my.plugin', {
        _create: function () {
            value++;
        },
        getValue: function () {
            return value;
        }
    });
})();

$('.element').plugin();
$('.second-element').plugin();

$('.element').plugin('getValue'); // 2

因为这是一项全球性的宣言,所以这项权利应该有效。不过,为了防止冲突,您可能需要给全局变量命名。因为这是一个全局声明,所以应该可以在这里使用。不过,您可能希望为全局变量命名名称空间,以防止冲突。