我写了一个小测试来描述我的问题:
<div id="test1"></div>
<div id="test2"></div>
<script>
(function ($) {
$.widget("mseh.testIt", {
options : {
foo : false,
bar : false
},
_settedOptions : {
foo : false,
bar : false
},
readOptions : function() {
return this._settedOptions;
},
_init : function() {
this._initializeTest();
},
_initializeTest : function() {
var self = this;
$.each(self.options, function(key, value) {
self._settedOptions[key] = value;
});
}
});
})(jQuery);
$('#test1').testIt({ foo : true, bar : false});
$('#test2').testIt({ foo : true, bar : true});
console.log($('#test1').testIt('readOptions'));
console.log($('#test2').testIt('readOptions'));
</script>
在这个例子中,两个日志都给了我一个真实的“foo”(如预期的那样)和一个真实的“bar”(不是预期的)。
这是一个错误还是我做错了什么?
使用 jQuery 1.7.2 和 1.9.1 测试。使用 jQueryUI 1.9.2 和 1.10.0 测试。
谢谢