zoukankan      html  css  js  c++  java
  • js+jq实现图片预览,支持到ie9+ff+chrome

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
    <style>
    .sou-upload{
    list-style: none;
    margin:0;
    padding: 0;
    }
    .sou-upload li{
    cursor: pointer;
    float: left;
    margin-right: 15px;
    45px;
    height: 46px;
    overflow: hidden;
    }
    .sou-upload li input{
    display: none;
    }
    .sou-upload li img{
    max- 100%;
    }
    </style>
    </head>
    <body>
    <ul class="sou-upload"  id="sou-upload">
    <li>
    <input type="file" id="sou-upload1" accept="image/*">
    <img src="img/upload.png" alt="" onclick="$('input[id=sou-upload1]').click();" >
    </li>
    <li>
    <input type="file" id="sou-upload2" accept="image/*">
    <img src="img/upload.png" alt="" onclick="$('input[id=sou-upload2]').click();" >
    </li>
    <li>
    <input type="file" id="sou-upload3" accept="image/*">
    <img src="img/upload.png" alt="" onclick="$('input[id=sou-upload3]').click();" >
    </li>
    <li>
    <input type="file" id="sou-upload4" accept="image/*">
    <img src="img/upload.png" alt="" onclick="$('input[id=sou-upload4]').click();" >
    </li>
    </ul>
    <script>
    $(".sou-upload li").each(function(index, el) {
    var fileUl=document.getElementById('sou-upload');
    var file=fileUl.getElementsByTagName('li')[index];
    file.getElementsByTagName('input')[0].onchange=function(){
    var fileList = this.files;   
    var imgObjPreview = this.parentNode.getElementsByTagName('img')[0];
    if (this.files && this.files[0]) {
    //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式
    imgObjPreview.src = window.URL.createObjectURL(this.files[0]);
     
    }
    else {
    //IE下,使用滤镜
    this.select();
    var imgSrc=this.value;    //这里的imgsrc地址直接拿的input的
    var localImagId = this.parentNode.getElementsByTagName('img')[0];
    //图片异常的捕捉,防止用户修改后缀来伪造图片
     
    try {
     
    localImagId.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
     
    localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
    imgObjPreview.src=imgSrc;
     
    }
    catch (e) {
     
    alert("您上传的图片格式不正确,请重新选择!");
     
    return false;
     
    }
    document.selection.empty();
     
    }
    return true;
    }
    });
    </script>
    </body>
    </html>
  • 相关阅读:
    csp 通信网络
    从客户端(content="xxxxx")中检测到有潜在危险的 Request.Form 值——较合理解决方案
    HttpUtility.HtmlEncode 方法
    web程序防止攻击的一些资料——整理
    memcached——学习
    VS2015 无法启动IIS Express Web服务器
    文件上传——资料收集
    水晶报表-需要安装软件
    web安全漏洞相关
    javascript一个在网页上画线的库
  • 原文地址:https://www.cnblogs.com/jldiary/p/5317194.html
Copyright © 2011-2022 走看看