美好的一天,简单的jQuery插件不工作
我正在写我的第一个jQuery插件。我从学习jQuery网站抓取了代码。下面是使用JavaScript的HTML:
<div>Hello World</div>
<br>
<br>
<div>Hola Mundo</div>
<a href="http://www.nbcnews.com">My Link</a>
<script src="js/jquery-1.9.1.min.js"></script>
<script src="js/jquery.greenify.js"></script>
<script>
$(function() {
$('div').greenify({
text: "Hola",
color: "#FF0000"
});
});
这里是jquery.greenify.js:
(function($) {
$.fn.greenify = function(options) {
// This is the easiest way to have default options.
var settings = $.extend({
// These are the defaults.
text: "Somewhere in time",
color: "#556b2f",
backgroundColor: "white"
}, options);
return this.each(function() {
$(this).text(settings.text);
if (settings.color) {
$(this).css('color', settings.color);
}
if (setting.backgroundColor) {
$(this).css('background-color', settings.backgroundColor);
}
});
};
}(jQuery));
无论出于何种原因,我没有看到变化发生作用。我已经检查了控制台,没有错误。我试图设置断点,并在jquery.greenify.js中返回this.each以查看代码是否正在执行,而不是。我从Github下载了一个类似的例子https://github.com/taupecat/jquery-plugin那确实工作。之后,我试图对代码进行建模,但仍然没有任何运气。
我希望另一组眼睛会捕捉我明显缺少的东西。
我已经检查了这个网站上的其他一些问题,但这些答案与我的问题无关。
TIA,
COSON
错字:'setting.backgroundColor'应该是'settings.backgroundColor' 。我的JS控制台出现错误。 – Barmar
修复后,它适用于我:http://jsfiddle.net/barmar/5rcrv4wt/1/ – Barmar
@Barmar,谢谢你的收获。 – coson