使用属性来改变javascript插件中的全局变量

Using a property to change a global variable in javascript plugin

本文关键字:插件 全局变量 javascript 改变 属性      更新时间:2023-09-26

我试图在

上的第11行代码中添加一个全局变量的更改。https://github.com/bahiirwa/Accrue.js/blob/gh-pages/jquery.accrue.js

我想要达到的效果是当我传递一个属性时(如果我错误地影响了被调用的插件中的全局变量,请纠正术语)

<script src="jquery.accrue.min.js"></script>
<script>
$(document).ready(function(){
    $(".calculator").accrue(
        currencySym: GBP,
    );
});
</script>
jquery.accrue.js中的第11行如下所示
;(function( $, window, document, undefined ){
    var currencySym = "UGX";
    // let's start our plugin logic
    $.extend($.fn, {
        accrue: function( options ){

您应该将您的货币单位作为有效对象传递,即

$(".calculator").accrue({
    currencySym: 'GPB'
});

然后您可以读取选项并相应地在$.extend:

中更新变量。
var currencySym = "UGX";
$.extend($.fn, {
    accrue: function (options) {
        // read currency from options object or use default (if undefined)
        currencySym = options.currencySym || currencySym;
        // ...
    }
});