ericyuan

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

利用百度开源插件 webupload

webupload html5用法

1.首先引进 webuploader.css、jquery.js、webuploader.js  3个文件,

注意:jquery.js 一定要在webuploader.js前面

代码如下:

<link rel="stylesheet" type="text/css" href="/webuploader.css">
<script type="text/javascript" src="/jquery-1.8.3.js"></script>
<script type="text/javascript" src="webuploader.js"></script>
 

2.js的初始化。不要看见swf就觉得仅仅支持flash,html5也兼容的哦,经过测试(google、ie、360浏览器都兼容)

<script type="text/javascript">
    jQuery(function () {
        var $ = jQuery, $list = $('#fileList');
        var uploader = WebUploader.create({
            // 自动上传。
            auto: true,
            // swf文件路径
            swf: '/ui/webuploader/js/Uploader.swf',

            // 文件接收服务端。
            server: '/system/file/uploadFile.shtml',
            disableGlobalDnd: true,

            chunked: true,
            // 选择文件的按钮。可选。
            // 内部根据当前运行是创建,可能是input元素,也可能是flash.
            pick: '#picker',

            // 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传!
            resize: false
        });
        // 当有文件被添加进队列的时候
        uploader.on('fileQueued', function (file) {
            $list.append('<div id="' + file.id + '" class="item">' +
                    '<span style="color: #00a2d4;float: 15px;">' + file.name + '</span>' +
                    '<span style="margin-left: 10px;font-size: 15px;" class="state">等待上传...</span>' +
                    '</div>');
        });
        // 文件上传过程中创建进度条实时显示。
        uploader.on('uploadProgress', function (file, percentage) {
            var $li = $('#' + file.id),
                    $percent = $li.find('.progress .progress-bar');

            // 避免重复创建
            if (!$percent.length) {
                $percent = $('<div class="progress progress-striped active">' +
                        '<div class="progress-bar" role="progressbar" style="width: 0%">' +
                        '</div>' +
                        '</div>').appendTo($li).find('.progress-bar');
            }

            $li.find('span.state').text('上传中');

            $percent.css('width', percentage * 100 + '%');
        });
        uploader.on('uploadSuccess', function (file) {
            $('#' + file.id).find('span.state').text('已上传');
        });

        uploader.on('uploadError', function (file) {
            $('#' + file.id).find('span.state').text('上传出错');
        });

        uploader.on('uploadComplete', function (file) {
            $('#' + file.id).find('.progress').fadeOut();
        });
    })

</script>
 

3.html页面部分:

<div id="uploader" class="wu-example">
    <div class="btns">
        <div id="picker">选择文件</div>
    </div>

    <!--用来存放文件信息-->
    <div id="fileList" class="uploader-list"></div>
</div>

  

 

原文:https://my.oschina.net/u/244677/blog/809092

参考:https://www.cnblogs.com/lz0925/p/11587236.html

posted on 2021-10-29 08:07  ericyuan  阅读(232)  评论(0编辑  收藏  举报