上传图片插件web upload

官网地址:http://fex.baidu.com/webuploader/getting-started.html

html:

<!--dom结构部分-->
<div id="uploader-demo">
    <!--用来存放item-->
    <div id="fileList" class="uploader-list"></div>
    <div id="filePicker">选择图片</div>
</div>

css3

.webuploader-container {
    position: relative;
}
.webuploader-element-invisible {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
    clip: rect(1px,1px,1px,1px);
}
.webuploader-pick {
    position: relative;
    display: inline-block;
    cursor: pointer;
    background: #00b7ee;
    padding: 10px 15px;
    color: #fff;
    text-align: center;
    border-radius: 3px;
    overflow: hidden;
}
.webuploader-pick-hover {
    background: #00a2d4;
}

.webuploader-pick-disable {
    opacity: 0.6;
    pointer-events:none;
}

JavaScript

//id -> 存放图片  width,height  存放图片尺寸宽高  id2 按钮  allMaxSize图片大小
function picUpload(id,width,height,id2,allMaxSize){

    var $ = jQuery,
        $list = $(id),
    // 优化retina, 在retina下这个值是2
        ratio = window.devicePixelRatio || 1,

    // 缩略图大小
        thumbnailWidth = width * ratio,
        thumbnailHeight = height * ratio,

    //allMaxSize = 1,//限制图片大小

    // Web Uploader实例
        uploader;

    // 初始化Web Uploader
    uploader = WebUploader.create({

        // 自动上传。
        auto: true,

        // swf文件路径
        swf: ‘E:/work/seller/public/img/common‘,

        // 文件接收服务端。
        server: ‘http://webuploader.duapp.com/server/fileupload.php‘,

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

        duplicate :true,//是否可以重复上传

        fileSizeLimit: allMaxSize*1024*1024, //限制图片大小,不可以超过

        compress: null,

        // 只允许选择文件,可选。
        accept: {
            title: ‘Images‘,
            extensions: ‘gif,jpg,jpeg,bmp,png‘,
            mimeTypes: ‘image/jpg,image/jpeg,image/png‘   //修改这行,加快上传文件框的打开速度
        }
    });

    // 当有文件添加进来的时候
    uploader.on( ‘fileQueued‘, function( file ) {
        $list.empty(); //清空之前上传的文件

        var $li = $(
                ‘<div id="‘ + file.id + ‘" class="file-item thumbnail">‘ +
                ‘<img>‘ +
                ‘<div class="info">‘ + file.name + ‘</div>‘ +
                ‘</div>‘
            ),
            $img = $li.find(‘img‘);

        $list.append( $li );

        // 创建缩略图
        uploader.makeThumb( file, function( error, src ) {
            if ( error ) {
                $img.replaceWith(‘<span>不能预览</span>‘);
                return;
            }

            //去掉默认的头像,清空图片名字的信息
            $(‘.webuploader-pick img‘).attr(‘src‘,‘‘)
            $(‘.file-item .info‘).empty();

            $img.attr( ‘src‘, src );
        }, thumbnailWidth, thumbnailHeight );

    });

    // 文件上传过程中创建进度条实时显示。
    uploader.on( ‘uploadProgress‘, function( file, percentage ) {
        var $li = $( ‘#‘+file.id ),
            $percent = $li.find(‘.progress span‘);

        // 避免重复创建
        if ( !$percent.length ) {
            $percent = $(‘<p class="progress"><span></span></p>‘)
                .appendTo( $li )
                .find(‘span‘);
        }

        $percent.css( ‘width‘, percentage * 100 + ‘%‘ );
    });

    // 文件上传成功,给item添加成功class, 用样式标记上传成功。
    uploader.on( ‘uploadSuccess‘, function( file ) {
        $( ‘#‘+file.id ).addClass(‘upload-state-done‘);
    });

    // 文件上传失败,现实上传出错。
    uploader.on( ‘uploadError‘, function( file ) {
        var $li = $( ‘#‘+file.id ),
            $error = $li.find(‘div.error‘);

        // 避免重复创建
        if ( !$error.length ) {
            $error = $(‘<div class="error"></div>‘).appendTo( $li );
        }

        //$error.text(‘上传失败‘);

    });

    // 完成上传完了,成功或者失败,先删除进度条。
    uploader.on( ‘uploadComplete‘, function( file ) {
        $( ‘#‘+file.id ).find(‘.progress‘).remove();
    });

    //  验证大小
    uploader.on("error",function (type){

         if(type == "Q_EXCEED_SIZE_LIMIT"){
            window.alert("系统提示:所选图片总大小不可超过" + allMaxSize + "M哦!换个小点的文件吧!");
        }

        // 判断传入的是不是函数
        /*  if( jQuery.isFunction(sideFun) ){
         sideFun(type,allMaxSize);
         }else {
         //不是函数
         console.log(2)
         return false;
         }*/
        /*  if(sideFun === ‘undefined‘){
         return true;
         }else{
         sideFun(type,allMaxSize);
         }
         */
    });

}

//调用
picUpload(‘#fileList‘,100,100,‘#filePicker‘,10000);
时间: 2024-10-13 01:14:55

上传图片插件web upload的相关文章

jQuery文件上传插件jQuery Upload File 有上传进度条

jQuery文件上传插件jQuery Upload File 有上传进度条 2015年05月15日 jQuery文件上传插件jQuery Upload File,插件使用简单,支持单文件和多文件上传,支持文件拖拽上传,有进度条显示.标准HTML form文件上传,也就是说,只要服务端支持接收multipart/form-data格式数据就能使用此上传插件. 本站web端文件文件提交即使用此插件,效果如下: 浏览器支持 浏览器支持:IE 8.0,IE 9.0,IE 10.0,Firefox,Saf

web upload 上传多张图片实例

首先要引用web upload插件: <link rel="stylesheet" type="text/css" href="css/webuploader.css"><script type="text/javascript" src="js/jquery-1.8.3.min.js"></script><script type="text/javasc

使用 Chrome 浏览器插件 Web Scraper 10分钟轻松实现网页数据的爬取

本文标签: WebScraper Chrome浏览器插件 网页数据的爬取 使用Chrome 浏览器插件 Web Scraper 可以轻松实现网页数据的爬取,不写代码,鼠标操作,点哪爬哪,还不用考虑爬虫中的登陆.验证码.异步加载等复杂问题. Web Scraper插件 Web Scraper 官网中的简介: Web Scraper Extension (Free!)Using our extension you can create a plan (sitemap) how a web site

前端 仿移动端时间插件,百度上传图片插件,监听滚动插入内容

仿移动端时间: https://docs.mobiscroll.com/jquery/eventcalendar#usage 结构: <input id="scroller" /> 百度上传图片插件 http://fex.baidu.com/webuploader/download.html 监听滚动,可用来插入内容 https://iiunknown.gitbooks.io/iscroll-5-api-cn/content/init.html 结构必须: <div

Uploadify多上传图片插件

官网demo链接:http://www.uploadify.com/demos/html: <div class="dp_jtxx">             <span class="bq_lf bq_sc">形象照</span>             <span class="input-file sc1">                 <input type="file&

ssi-uploader上传图片插件,点击选择文件按钮自动提交表单解决办法

先介绍一下这款插件,然后再谈使用中可能遇到的问题 ssi-uploader是一个JQuery的图片上传插件,界面比较美观 github地址:https://github.com/ssbeefeater/ssi-uploader 演示地址:http://ssbeefeater.github.io/#ssi-uploader/examples 使用文档:http://ssbeefeater.github.io/#ssi-uploader/documentation 这里就不说明怎么使用了,githu

百度上传插件Web Uploader

WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件.在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流IE浏览器,沿用原来的FLASH运行时,兼容IE6+,iOS 6+, android 4+.两套运行时,同样的调用方式,可供用户任意选用. 采用大文件分片并发上传,极大的提高了文件上传效率 分片.并发 分片与并发结合,将一个大文件分割成多块,并发上传,极大地提高大文件的上传速度. 当网络问题导致传输错误时,

优秀的前端上传文件插件 web uploader

WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件.在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流IE浏览器,沿用原来的FLASH运行时,兼容IE6+,iOS 6+, android 4+.两套运行时,同样的调用方式,可供用户任意选用. 采用大文件分片并发上传,极大的提高了文件上传效率. 具体的使用方法和插件请参考 web uploader 之官网: http://fex-team.github.io/

uploadify上传图片插件的使用

uploadify 是一款上传图片专用的插件该插件在页面中只是一个按钮,点击按钮弹出文件选择框,选择图片后自动上传到服务器 1.http://www.uploadify.com/ 是其官网 下载可能需要钱 2.使用 在官网点击doc来到文档位置http://www.uploadify.com/documentation/ 在下面点击Implementing Uploadify来到安装使用的目录 http://www.uploadify.com/documentation/uploadify/im