Fine Uploader - 没有'on'方法

时间:2013-07-04 15:21:03

标签: javascript jquery fine-uploader

我从网站上获得了一些使用Fine Uploder的代码,并且我在使用它时遇到了一些问题。

我在控制台中收到以下错误

Uncaught TypeError: Object [object Object] has no method 'on' 

我使用的代码如下:

    // Instantiate a Fine Uploader instance:
    $("#manual-fine-uploader").fineUploader({
        autoUpload: false,
        request: {
            endpoint: "/uploads_bucket"
        }
    }).on("complete", function (event, id, name, response) {
        submitForm.call(this);
    }).on('statusChange', function (event, id, oldStatus, newStatus) {
        if (newStatus === qq.status.CANCELLED) {
            submitForm.call(this);
        } 
    });

非常感谢任何帮助。

干杯,

1 个答案:

答案 0 :(得分:1)

你真的应该使用当前版本的jQuery。 1.6.4很老了。如果您坚持使用1.7之前的版本,请使用bind代替on。有人建议使用live,坦率地说,这里没有任何意义。不要使用live。再次,在代码中将on替换为bind。最好的解决方案是简单地使用当前版本的jQuery。

为什么不使用live?好的,Fine Uploader在内部使用triggerHandler来触发事件。使用triggerHandler触发的事件不会冒泡,因此,如果您live使用live,则永远不会触及您的处理程序,因为document始终将您的处理程序绑定到{{1}}。