【发布时间】:2010-05-28 20:38:57
【问题描述】:
我正在开发一个 jQuery 插件,但在正确设置变量范围时遇到了一些麻烦。这是我的代码中的一个示例:
(function($) {
$.fn.ksana = function(userOptions) {
var o = $.extend({}, $.fn.ksana.defaultOptions, userOptions);
return this.each(function() {
alert(rotate()); // o is not defined
});
};
function rotate() {
return Math.round(o.negRot + (Math.random() * (o.posRot - o.negRot)));
};
$.fn.ksana.defaultOptions = {
negRot: -20,
posRot: 20
};
})(jQuery);
我试图让私有函数 rotate 能够看到 o 变量,但它只是不断提醒“o 未定义”。我不确定我做错了什么。
【问题讨论】:
标签: javascript jquery scope