我正在从头开始编程一个新的jquery ui小部件。我找到了官方的"小部件工厂如何工作"文档。(http://jqueryui.com/demos/widget/)
小部件本身运行良好。现在我想在内部存储一些值——有没有首选的方法
我认为,期权中声明的所有财产都是公开的。
谢谢你的帮助!
只需在this
上使用普通的旧属性。例如,一个基本的小部件看起来像这样:
$.widget('some_name', {
options: { /* ... */ },
_create: function() {
// ...
this.internal_value = 11;
// ...
},
frobnicate_by: function(this_much) {
this.internal_value += this_much;
}
// ...
});
您可以根据需要将内部值设置为this
的属性。例如,上面将this.internal_value
设置为初始值11,并且$(s).some_name('frobnicate_by', 23)
将改变internal_value
。
通过查找this.changer
,您可以在链接到的示例小部件中看到内部属性的示例。
options
用于当有人创建小部件的实例时可以配置的内容。内部设置不需要任何特殊处理,它们只是简单的旧对象属性;小部件工厂的一个好处是,它可以很容易地在小部件中进行正常的OO操作。