下式给出: jquery 1.3.2 jquery ui 1.7.2
我发现了以下jquery片段但是遇到了问题。
$(document).ready(function() {
$.widget("ui.hello", {
options: {
foo: "bar",
baz: "quux"
},
_init: function() {
var text = this.options.text;
this.element.innerHTML("hello " + this.options.foo + " and " + this.options.baz);
}
});
$("#thing").hello({ foo: "WORLD!" });
});
以下是问题:
this.options.baz); 未定义不应该使用默认值吗?
源: http://blog.citrusbyte.com/2010/09/16/jquery-widgets-bringing-sanity/
答案 0 :(得分:0)
this
可能没有引用小部件。尝试删除this.
,只需参考如下选项:
this.element.innerHTML("hello " + options.foo + " and " + options.baz);
答案 1 :(得分:0)
这就是我最终做的事情:
<script type="text/javascript">
$(document).ready(function() {
$.widget("ui.hello", {
_init: function() {
var text = this.options.text;
alert(this.options.baz);
}
});
$.extend($.ui.hello, {
defaults: {
baz: "whatever"
}
});
$("#thing").hello({ foo: "WORLD!" });
});
</script>