jQuery.fn.extend({
fillCurrency : (function() {
$this = jQuery(this);
function _usd(string1) {
$this.text("$" + parseFloat(string1).toFixed(2));
return $this;
}
return {
usd : _usd
};
})()
});
var text = 2;
jQuery("#total").fillCurrency.usd(text);
<p id="total"></p>
尝试了几种选择,我想我现在已经接近了。问题是现在Object [object global]没有方法'createDocumentFragment'。有人知道这里的问题是什么吗?
答案 0 :(得分:0)
首先我建议在函数fillCurrency
的参数中传递货币,然后在您的代码中输入拼写错误:
jQuery("#total").fillCurency.usd(text);
应该是
jQuery("#total").fillCurrency.usd(text);
但即使你修正了错字,它也不会给你你想要的东西
这就是我的建议:
(function ($) {
$.fn.fillCurrency = function (currency, value) {
return this.each(function () {
if (currency === "usd") {
$(this).text(parseFloat(value).toFixed(2));
}
});
}
})(jQuery);
$(function () {
var text = 2;
$("p#total").fillCurrency("usd", text);
});
答案 1 :(得分:0)
我得到了解决方案:
jQuery.fn.extend({
Currency : function() {
var $this = this;
var _Fill = {
usd : function(string) {
$this.text("$" + parseFloat(string).toFixed(2));
return $this;
}
}
var _Get = {
usd : function(string) {
$this.text("$" + parseFloat(string).toFixed(2));
return $this;
}
}
return {
Fill : _Fill,
Get : _Get
}
}
});
这会将jQuery对象传递给内部对象,例如插件。