javascript - 在下例js中,如何给arguments加自定义属性
PHP中文网
PHP中文网 2017-04-10 15:14:07
0
1
206

先做了一个$拓展,代码如下

 $.extend({
        create: function (og) {
            var o = $.extend(og || {}, {
                extend: $.extend
            });
            var jObj = o._jQueryObject = $(o);
            o.extend({
                on: function () {
                    $.fn.on.apply(jObj, arguments);
                    return this;
                },
                .......
            });
            return o;
        }
    });

然后谢了这样一些代码:

var eventObjs = {
    loadData:function(){},
    updataStatus: function(e, args) {
        console.log(arguments);
        loadData();
        .....
    }
};
/*[1]*我想在下面调用eventObjs.updataStatus函数的时候在arguments中加一些自定义的属性进去**/
$app.on("online", eventObjs.updataStatus)

我的做法是:[2]

$app.on("online", function(e, args) {
    args._status = 1;
    eventObjs.updataStatus(e, args);
}) 

问题1:请问有没有像上面[1]时那样调用的同时,也能实现[2]那种效果?该如何实现?
问题2:
当我如下图进行事件绑定时,由于updataStatus调用了内部的loadData函数,会报错,loadData未定义,请问是什么原因造成的?该如何优雅的解决这个问题

$app.on("online", eventObjs.updataStatus) 
PHP中文网
PHP中文网

认证0级讲师

reply all(1)
Ty80

$app.on("online", {msg:"yourBizData"},eventObjs.updataStatus)

var eventObjs = {
    updataStatus: function(e, args) {
        var myData=e.data.msg;
        .....
    }
};
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template