如何在jQuery插件中创建方法(函数)

时间:2016-02-05 18:59:08

标签: javascript jquery

我想创建一个插件,它将在PC上查找img文件,加载此图像文件后,用户可以选择一些方法来应用。例如,在调用插件中:

$('#test').myPlugin({
  legend: true
});

我的插件上传文件的代码是:

    (function( $ ){
var handleFileSelect = function (evt) {
    var files = evt.target.files;
    for(var i = 0, f; f = files[i]; i++) {
        if (!f.type.match('image.*')) {
            continue;
        }
        var reader = new FileReader();
        reader.onload = (function(theFile) {
            return function(e) {
              // Render thumbnail.
              var span = document.createElement('span');
              span.innerHTML = ['<img class="responsive-img thumb" src="', e.target.result,
                                '" title="', escape(theFile.name), '"/>'].join('');
              document.getElementById('list').insertBefore(span, null);
            };
        })(f);
        reader.readAsDataURL(f);
    }
};
$.fn.upload = function(options) {
    var settings = $.extend( {}, options );
    return this.each(function() {
        document.getElementById('files').addEventListener('change', handleFileSelect, false);
    });
};
})( jQuery );

此代码在上传img时效果很好,但我不知道如何在此插件中添加方法。谁来帮帮我? 谢谢!

1 个答案:

答案 0 :(得分:0)

  

我如何在这个插件中添加方法

已经的方式相同。请注意你在这里添加一个插件函数:

$.fn.upload = function(options) {
    //...
}

因此,如果您想通过其他名称添加函数,只需使用其他名称添加函数:

$.fn.myPlugin = function(options) {
    //...
}