tools

var currturl = window.location.href;  //获取当前url
var body_widths=isMobile=="true"?window.innerWidth:document.body.clientWidth;
var body_heights=isMobile=="true"?window.innerHeight:window.screen.availHeight;

//跳转页面
function linkto(str) {
    window.location.href = str;
};
// 刷新页面
function reload(time) {
    location.reload();  
}

//返回上一页
function back(){
    window.history.go(-1);
}
/*去除""或undefind null*/
function checkNulls(obj) {
    var isNull=false;
    if (obj === null || typeof (obj) === "undefined") {
        isNull=true;
    }else{
        var type = (typeof (obj)).toLowerCase();
        if (type === "string" && (obj.toString()).replace(/(^\s*)|(\s*$)/g, "") === "") {
            isNull=true;
        }
        if(type=="object"){
            isNull=false;
        }
    }
    return isNull;
}

/* 去除 undefind、 null 全部设为 ""  */
function removeNull(obj) {
    if (obj === null || typeof (obj) === "undefined") {
        obj="";
    }else{
        var type = (typeof (obj)).toLowerCase();
        if(type === "string" ){
            if( (obj.toString()).replace(/(^\s*)|(\s*$)/g, "") === ""){
                obj="";
            }else{
                obj=obj.replace(/(^\s*)|(\s*$)/g, "")
            }
        }
        
    }
    return obj;
}


//判断图片是否存在
function IsExist(imgurl) {
    var ImgObj = new Image(); //判断图片是否存在  
    ImgObj.src = imgurl;
    //没有图片,则返回-1  
    if (ImgObj.fileSize > 0 || (ImgObj.width > 0 && ImgObj.height > 0)) {
        return true;
    } else {
        return false;
    }
}


//加零
function addzerro(str) {
    if (parseInt(str) < 10) {
        return "0" + parseInt(str);
    }
    else {
        return parseInt(str);
    }

}

//获取url参数
function geturl(name) {
    var reg = new RegExp("(^|\\?|&)" + name + "=([^&]*)(\\s|&|$)", "i");
    if (reg.test(location.href)) return decodeURI(RegExp.$2.replace(/\+/g, " ")); return "";
};


/**
 * 获取日期当月最后一天   为空时为当前日期 
 * day  :   要转换的日期 格式:2017.06.01 或 2017.06
 */
function getLastDay(day) {
    day= day || "";
    var mydate =day==""?new Date():new Date(day);
    var year = parseInt(mydate.getFullYear());
    var month =mydate.getMonth() + 1 
    month=parseInt(month)<10?"0" + parseInt(month):parseInt(month);
    var new_year = year;  //取当前的年份   
    var new_month = month++;//取下一个月的第一天,方便计算(最后一天不固定)   
    if (month > 12)      //如果当前大于12月,则年份转到下一年   
    {
        new_month -= 12;    //月份减   
        new_year++;      //年份增   
    }
    var new_date = new Date(new_year, new_month, 1);        //取当年当月中的第一天   
    return (new Date(new_date.getTime() - 1000 * 60 * 60 * 24)).getDate();//获取当月最后一天日期   
}

//月份小写转大写
function changecapital(str) {
    str = String(str);
    var parses=["","一","二","三","四","五","六","七","八","九","十","十一","十二"]
    var str1 = parses[str] || ""
    return str1;
}



//随机数时间戳  
function uniqueId() {  
    var a = Math.random, b = parseInt; 
    console.log("Number(new Date()).toString():",Number(new Date()).toString()) 
    console.log("b(10 * a()):",b(10 * a())) 
    return Number(new Date()).toString() + b(10 * a()) + b(10 * a()) + b(10 * a());  
}  



//判断是否是微信
var is_weixin = (function () { //判断微信UA
    var ua = navigator.userAgent.toLowerCase();
    if (ua.match(/MicroMessenger/i) == "micromessenger") {
        return true;
    } else {
        return false;
    }
})();


//判断移动端还是电脑端
var isMobile = (function () {
    if ((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i))) {
        return true;
    }
    else {
        return false//pc端
    }
    //  return (/iphone|ipod|android.*mobile|windows.*phone|blackberry.*mobile/i.test(window.navigator.userAgent.toLowerCase()));  
})();




/*获取上个月的月份*/
function getUpMonth(dateString){
    dateString=dateString || "";
    var date = dateString==""?new Date():new Date(dateString);
    var year = date.getFullYear();
    var month = date.getMonth();
    if(month == 0){
        year--;
        month = 12;
    }
    return year+"-"+(month < 10 ? "0"+month : month);
}

//调用state时显示html  react
function createMarkup(str) {
    return { __html: str };
}

/* ----------------- 判断字符串长度 (汉字为两个字符) ----------------- */
function strlen(str) {
    var len = 0;
    for (var i = 0; i < str.length; i++) {
        var c = str.charCodeAt(i);
        //单字节加1
        if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) {
            len++;
        }
        else {
            len += 2;
        }
    }
    //return this.replace(/[^\x00-\xff]/g, "**").length;    另一种方法
    return len;
}

/* 获取n天以前 默认7天*/
 function getYestoday(str,date) {
    str=str || 7;
    date=date || "";
    var d =date==""?new Date():new Date(date);
    var beforday=str*1000;
    var yesterday_milliseconds = d.getTime() - beforday * 60 * 60 * 24;
    var yesterday = new Date();
    yesterday.setTime(yesterday_milliseconds);
    var strYear = yesterday.getFullYear();
    var strDay = yesterday.getDate();
    var strMonth = yesterday.getMonth() + 1;
    var datastr = strYear + "-" + (strMonth < 10 ? '0' + strMonth : strMonth) + "-" + (strDay < 10 ? '0' + strDay : strDay);
    return datastr;
}

/* 获取n天以后  默认7天*/ 
function getLasttoday(str,date) {
    str=str || 7;
    date=date || "";
    var d =date==""?new Date():new Date(date);
    var beforday=str*1000;
    var yesterday_milliseconds = d.getTime() + beforday * 60 * 60 * 24;
    var yesterday = new Date();
    yesterday.setTime(yesterday_milliseconds);
    var strYear = yesterday.getFullYear();
    var strDay = yesterday.getDate();
    var strMonth = yesterday.getMonth() + 1;
    var datastr = strYear + "-" + (strMonth < 10 ? '0' + strMonth : strMonth) + "-" + (strDay < 10 ? '0' + strDay : strDay);
    return datastr;
}


/*  获取图片真实宽高   */
var getrealImg=function(src){
var img = new Image();
    img.src = src;
     var kuan;
     var gao;
     if(img.complete) {
        kuan=img.width;
        gao=img.height;
    }else{
       img.onload = function () { 
       kuan=img.width;
       gao=img.height;
       img.onload = null;
       };
       img.src = src;
    };
     return {
      widths:kuan,
      heights:gao,
    }
};


//生成时间戳
function Timestamp() {
    var a = Math.random, b = parseInt;  
    return Number(new Date()).toString() + b(10 * a()) + b(10 * a()) + b(10 * a()); 
}

/* 比较日期 */
/**
 * day 比较的日期
 * compareDay : 被比较的日期  默认为当天
 * 返回三个结果  after:大于当前日期 (当天之后); today  等于当前日期(当天);before:小于等于当前日期(当天之前)
 */
var compareDay=function(day,compareDay){
    day=day || "";
    compareDay=compareDay || "";
    if(day=="") return "";
    day=new Date(day).toLocaleDateString();
    var currentDay=compareDay==""?new Date().toLocaleDateString():new Date(compareDay).toLocaleDateString();
    var currdatetime=compareDay==""?currentDay:compareDay;
    var isbefore="";
    if (Date.parse(currdatetime) < Date.parse(day)) { //大于当前日期
        isbefore="after";
    }
    if (Date.parse(currdatetime) == Date.parse(day)) { //等于当前日期
        isbefore="today";
    }
    //小于等于当前日期
    if (Date.parse(currdatetime) > Date.parse(day)) {
        isbefore="before";
    }
    return isbefore;
}


//格式化日期 DateFormat('yyyy-MM-dd hh:mm:ss:SS 星期w 第q季度') w 星期 小写为数字 大写为中文    
function DateFormat(format,date) { 
    date=date?new Date(date):new Date();
    format=format || "yyyy-MM-dd";
    var Week = ['日', '一', '二', '三', '四', '五', '六'];  
    var o = {  
        "y+": date.getYear(), //year  
        "M+": date.getMonth() + 1, //month   
        "d+": date.getDate(), //day   
        "h+": date.getHours(), //hour   
        "H+": date.getHours(), //hour  
        "m+": date.getMinutes(), //minute   
        "s+": date.getSeconds(), //second   
        "q+": Math.floor((date.getMonth() + 3) / 3), //quarter   
        "S": date.getMilliseconds(), //millisecond   
        "w": date.getDay(),
        "W": Week[date.getDay()]  
    }  
    if (/(y+)/.test(format)) {  
        format = format.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));  
    }  
    for (var k in o) {  
        if (new RegExp("(" + k + ")").test(format)) {  
            format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));  
        }  
    }  
    return format;  
}  



/* --------   获取几周 几天前 几小时前  几分钟前 刚刚等七个状态 --------------*/
function getDateDiff(dateTimeStamp){
    var minute = 1000*60;
    var hour = minute*60;
    var day = hour*24;
    var halfmonth = day*15;
    var month = day*30;
    var now = new Date().getTime();
    var diffValue = now - new Date(dateTimeStamp);
    
    if(diffValue < 0 ){
        conosle.log('结束日期不能小于开始日期');
    }
    var monthC = diffValue/month;
    var weekC = diffValue/(7*day);
    var dayC= diffValue/day;
    var hourC = diffValue/hour;
    var minC = diffValue/minute;
    
    // 7个显示阶段
    if(monthC > 12){// 大于12个月显示年-月-日 时:分
        return DateFormat('yyyy-MM-dd hh:mm:ss',dateTimeStamp);
    }else if(monthC >= 1){// 一年以内显示 几个月前
        return parseInt(monthC) + '个月前';
    }else if(weekC >= 1){// 几周前
        return parseInt(weekC) + '周前';
    }else if(dayC >= 1){// 几天前
        return parseInt(dayC) + '天前';
    }else if(hourC >= 1){// 几小时前
        return parseInt(hourC) + '个小时前';
    }else if(minC >= 1){// 几分钟前
        return parseInt(minC) + '分钟前';
    }else{// 刚刚
        return '刚刚';
    }
}

/* 加载外部js  */
function addjs(url,box){
  box=box || "";
  var script = document.createElement("script");
  script.src = url;
  script.charset="utf-8";
  script.type = "text/javascript";
  box==""?document.body.appendChild(script):$(box).append(script); 
}

/* js中加载css */
function addCss(cssCode,box){
    box=box || "";
    var eStyle = document.createElement ('style');
    eStyle.innerHTML = cssCode;
    box==""?document.querySelector ('head').appendChild (eStyle):$(box).querySelector ('head').appendChild (eStyle); 
    //document.querySelector ('head').appendChild (eStyle);
}

/**
 * 
 * 数组内删除对象
 * 使用:
 * var somearray = ["mon", "tue", "wed", "thur"]
 * somearray.removeByValue("tue");
 * */
var removeByValue = function(arrys,val) {
  for(var i=0; i<arrys.length; i++) {
    if(arrys[i] == val) {
      arrys.splice(i, 1);
      break;
    }
  }
  return arrys
}

/*获取参数总和*/
function getSum(values) {
    var sum = 0;
    for (var val of values) {
        sum += val;
    }
    return sum;
}

// jquery判断对象是否获得焦点
function isFocus(str){
    var isFocus=$(str).is(":focus");
    return isFocus;  //true :获得焦点 false:未获得焦点
}




/*  截取字符串,多出的显示省略号   */
var cutstr = function (strings, len) {  
    var restr = strings;  
    var wlength = strings.replace(/[^\x00-\xff]/g, "**").length;  
    if (wlength > len) {  
        for (var k = len / 2; k < strings.length; k++) {  
            if (strings.substr(0, k).replace(/[^\x00-\xff]/g, "**").length >= len) {  
                restr = strings.substr(0, k) + "...";  
                break;  
            }  
        }  
    }  
    return restr;  
}

//替换全部  
var replaceAll = function (obj,s1, s2) {  
    return obj.replace(new RegExp(s1, "gm"), s2)  
}  
//字符串去空格  
var trim = function (obj) {  
    return obj.replace(/(^\s*)|(\s*$)/g, "");  
}  
var trimAll = function (obj) {  
    return obj.replace(/\s+/g, "");  
}  
var lTrim = function (obj) {  
    return obj.replace(/(^\s*)/g, "");  
}  
var rTrim = function (obj) {  
    return obj.replace(/(\s*$)/g, "");  
}  
//判断是否以某个字符串开头  
var startWith = function (obj,s) {  
    return obj.indexOf(s) == 0  
}  
//判断是否以某个字符串结束  
var endWith = function (obj,s) {  
    var d = obj.length - s.length;  
    return (d >= 0 && obj.lastIndexOf(s) == d)  
}  
    
//删除数组中存在重复的元素  
function getUnique(someArray) {  
    tempArray = someArray.slice(0); //复制数组到临时数组  
    for (var i = 0; i < tempArray.length; i++) {  
        for (var j = i + 1; j < tempArray.length;) {  
            if (tempArray[j] == tempArray[i])  
                //后面的元素若和待比较的相同,则删除并计数;  
                //删除后,后面的元素会自动提前,所以指针j不移动  
            {  
                tempArray.splice(j, 1);  
            }  
            else {  
                j++;  
            }  
            //不同,则指针移动  
        }  
    }  
    return tempArray;  
}  
//判断数组中是否存在重复的元素  
function confirmRepeat(someArray) {  
    let tempArray = someArray.slice(0); //复制数组到临时数组  
    for (var i = 0; i < tempArray.length; i++) {  
        for (var j = i + 1; j < tempArray.length;) {  
            if (tempArray[j] == tempArray[i])  
                //后面的元素若和待比较的相同,则删除并计数;  
                //删除后,后面的元素会自动提前,所以指针j不移动  
            {  
                return true;  
            }  
            else {  
                j++;  
            }  
            //不同,则指针移动  
        }  
    }  
    return false;  
}  
    
//判断某个值是否在数组中  
var in_array = function (obj,e) {  
    for (i = 0; i < obj.length; i++) {  
        if (obj[i] == e)  
            return true;  
    }  
    return false;  
}  
//判断某个值在数组中的位置  
var indexOf = function (obj,e) {  
    for (i = 0; i < obj.length; i++) {  
        if (obj[i] == e)  
            return i;  
    }  
    return -1;  
}  
    
//转义html标签  
function HtmlEncode(text) {  
    return text.replace(/&/g, '&').replace(/\"/g, '"').replace(/</g, '<').replace(/>/g, '>')  
}  


//跨浏览器绑定事件  
function addEventSamp(obj, evt, fn) {  
    if (!oTarget) { return; }  
    if (obj.addEventListener) {  
        obj.addEventListener(evt, fn, false);  
    } else if (obj.attachEvent) {  
        obj.attachEvent('on' + evt, fn);  
    } else {  
        oTarget["on" + sEvtType] = fn;  
    }  
}  
//跨浏览器删除事件  
function delEvt(obj, evt, fn) {  
    if (!obj) { return; }  
    if (obj.addEventListener) {  
        obj.addEventListener(evt, fn, false);  
    } else if (oTarget.attachEvent) {  
        obj.attachEvent("on" + evt, fn);  
    } else {  
        obj["on" + evt] = fn;  
    }  
}  

//完美判断是否为网址  
function IsURL(strUrl) {  
    var regular = /^\b(((https?|ftp):\/\/)?[-a-z0-9]+(\.[-a-z0-9]+)*\.(?:com|edu|gov|int|mil|net|org|biz|info|name|museum|asia|coop|aero|[a-z][a-z]|((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d))\b(\/[-a-z0-9_:\@&?=+,.!\/~%\$]*)?)$/i  
    if (regular.test(strUrl)) {  
        return true;  
    } else {  
        return false;  
    }  
}   
//获取页面高度  
function getPageHeight() {  
    var g = document, a = g.body, f = g.documentElement, d = g.compatMode == "BackCompat" ? a : g.documentElement;  
    return Math.max(f.scrollHeight, a.scrollHeight, d.clientHeight);  
}  
//获取页面宽度  
function getPageWidth() {  
    var g = document, a = g.body, f = g.documentElement, d = g.compatMode == "BackCompat" ? a : g.documentElement;  
    return Math.max(f.scrollWidth, a.scrollWidth, d.clientWidth);  
}  
//获取页面可视宽度  
function getPageViewWidth() {  
    var d = document, a = d.compatMode == "BackCompat"  
                    ? d.body  
                    : d.documentElement;  
    return a.clientWidth;  
}  
//获取页面可视高度  
function getPageViewHeight() {  
    var d = document, a = d.compatMode == "BackCompat"  
                    ? d.body  
                    : d.documentElement;  
    return a.clientHeight;  
}  
//获取页面scrollLeft  
function getPageScrollLeft() {  
    var a = document;  
    return a.documentElement.scrollLeft || a.body.scrollLeft;  
}  
//获取页面scrollTop  
function getPageScrollTop() {  
    var a = document;  
    return a.documentElement.scrollTop || a.body.scrollTop;  
}  
//获取窗体可见范围的宽与高  
function getViewSize() {  
    var de = document.documentElement;  
    var db = document.body;  
    var viewW = de.clientWidth == 0 ? db.clientWidth : de.clientWidth;  
    var viewH = de.clientHeight == 0 ? db.clientHeight : de.clientHeight;  
    return Array(viewW, viewH);  
}  

//获取网页被卷去的位置  
function getScrollXY() {  
    return document.body.scrollTop ? {  
        x: document.body.scrollLeft,  
        y: document.body.scrollTop  
    } : {  
        x: document.documentElement.scrollLeft,  
        y: document.documentElement.scrollTop  
    }  
}  
//匹配国内电话号码(0511-4405222 或 021-87888822)   
function istell(str) {  
    var result = str.match(/\d{3}-\d{8}|\d{4}-\d{7}/);  
    if (result == null) return false;  
    return true;  
}  
//匹配身份证(15位或18位)   
function isidcard(str) {  
    var result = str.match(/\d{15}|\d{18}/);  
    if (result == null) return false;  
    return true;  
}  
//移动电话  
function checkMobile(str) {  
    if (!(/^1[3|5|8][0-9]\d{4,8}$/.test(str))) {  
        return false;  
    }  
    return true;  
}  
// 判断输入是否是一个由 0-9 / A-Z / a-z 组成的字符串   
function isalphanumber(str) {  
    var result = str.match(/^[a-zA-Z0-9]+$/);  
    if (result == null) return false;  
    return true;  
}  
// 判断输入是否是有效的电子邮件   
function isemail(str) {  
    var result = str.match(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/);  
    if (result == null) return false;  
    return true;  
} 


    
/** 复制到剪贴板 elementId:要复制元素的id*/
function copyToClipboard(elementId) {
    // 创建元素用于复制
    var aux = document.createElement("input");
    // 获取复制内容
    var content = document.getElementById(elementId).innerHTML || document.getElementById(elementId).value;
    // 设置元素内容
    aux.setAttribute("value", content);
    // 将元素插入页面进行调用
    document.body.appendChild(aux);
    // 复制内容
    aux.select();
    // 将内容复制到剪贴板
    document.execCommand("copy");
    // 删除创建元素
    document.body.removeChild(aux);
    alert("复制成功");
}    

/**
 * 大小写转换    
 * type: upper:转成大写, lower:转换成小写
 */     
function toCase(text,type){
  type=type || "lower";
  var texts=type=="upper"?text.toUpperCase():text.toLowerCase ();
  return texts
}

/* 银行卡验证 */
function bankcheck(values,callBack){
    callBack=callBack?callBack:function(){};
    // var e=window.event||event; //消除浏览器差异
    // var values=e.target.value;
    if (values == "") return;
    var account = new String (values);
    account = account.substring(0,22); /*帐号的总数, 包括空格在内 */
    if (account.match (".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}") == null){
        /* 对照格式 */
        if (account.match (".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}|" + ".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}|" +
        ".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}|" + ".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}") == null){
            var accountNumeric = accountChar = "", i;
            for (i=0;i<account.length;i++){
                accountChar = account.substr (i,1);
                if (!isNaN (accountChar) && (accountChar != " ")) accountNumeric = accountNumeric + accountChar;
            }
            account = "";
            for (i=0;i<accountNumeric.length;i++){ /* 可将以下空格改为-,效果也不错 */
                if (i == 4) account = account + " "; /* 帐号第四位数后加空格 */
                if (i == 8) account = account + " "; /* 帐号第八位数后加空格 */
                if (i == 12) account = account + " ";/* 帐号第十二位后数后加空格 */
                account = account + accountNumeric.substr (i,1)
            }
        }
    }else{
        account = " " + account.substring (1,5) + " " + account.substring (6,10) + " " + account.substring (14,18) + "-" + account.substring(18,25);
    }
    if (account != values){
        callBack(account)
    } 
    // if (account != values) e.target.value= account;
}

/** 禁止非数字输入 */
function checkNaN(event,params){
    var e=window.event||event; //消除浏览器差异
    var code = e.keyCode||e.which;  //8 为backsppace键 
    var values=e.target.value;
    var defaultParams = {
        type:"1",
        isalert:false,
        tle:"",
        ischeckNull:false,
        callback:function(){},
        success:function(){},
    }
    var settings = {};
    jQuery.extend(settings,defaultParams,params);
    var type=settings.type;
    var isalert=settings.isalert;
    var tle=settings.tle;
    var ischeckNull=settings.ischeckNull;
    var callback=settings.callback;
    var success=settings.success
    
    var alertText=tle==""?(type=="2"?"只能输入正数字":"只能输入数字"):tle; //提示的文字
    if(!e.target.value || e.target.value==""){
        ischeckNull?success(event):"";
        // e.target.value=""
    }else{
        var reg=/^([1-9]\d*|[0]{1,1})$/  //isNaN()
        checkKey=type=="2"?!reg.exec(e.target.value):isNaN(e.target.value)
        if(code!=8 && checkKey){  
            e.target.value=(values.substring(0,(values.length-1))).replace(/[^\d.]/g,'');
            isalert?layer.msg(alertText,{icon:5}):"";
            callback(alertText);
            e.returnValue = false; 
        }else{
            success(event);
        }
    }
}


/**图片上传 */
function imgChange(event,callback){
    callback=callback?callback:function(){};
    var e=window.event|| event
    var $this=$(e.currentTarget);
    var fileId=$this.attr("id");
    var ings=$this.parents(".uploads").find(".upload-img").html()
    var imgType=[".jpg",".jpeg",".png",".gif"]
    var imgArry=[];
    var file = document.getElementById(fileId);
    if(window.FileReader){//chrome,firefox7+,opera,IE10+
        var myfilesObj=e.currentTarget.files  //e.currentTarget.files[0]
        for(var i in myfilesObj){
            if(!isNaN(i)){
                var myfiles=myfilesObj[i];
                var imgObj={};
                imgObj.name = myfiles.name;
                imgObj.size = myfiles.size;    //读取选中文件的大小
                imgObj.type = myfiles.type;
                imgObj.fileType=(myfiles.type).indexOf("image")>=0?"image":"files";
                oFReader = new FileReader();
                oFReader.readAsDataURL(file.files[i]);
                oFReader.onload = function (oFREvent) {
                    imgObj.src = oFREvent.target.result;
                    imgArry.push(imgObj)
                    uploadShowimg($this,imgArry)
                    callback(imgArry)
                };      
            }
        }
    }
    else if (document.all) {//IE9-//IE使用滤镜,实际测试IE6设置src为物理路径发布网站通过http协议访问时还是没有办法加载图片
        file.select();
        file.blur();//要添加这句,要不会报拒绝访问错误(IE9或者用ie9+默认ie8-都会报错,实际的IE8-不会报错)
        var reallocalpath = document.selection.createRange().text//IE下获取实际的本地文件路径
        //if (window.ie6) pic.src = reallocalpath; //IE6浏览器设置img的src为本地路径可以直接显示图片
        //else { //非IE6版本的IE由于安全问题直接设置img的src无法显示本地图片,但是可以通过滤镜来实现,IE10浏览器不支持滤镜,需要用FileReader来实现,所以注意判断FileReader先
            imgObj.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='image',src=\"" + reallocalpath + "\")";
            imgObj.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==';//设置img的src为base64编码的透明图片,要不会显示红xx
            uploadShowimg($this,imgArry)
            callback(imgObj)
       // }
    }
    else if (file.files) {//firefox6-
        if (file.files.item(0)) {
            url = file.files.item(0).getAsDataURL();
            imgObj.src = url;
            uploadShowimg($this,imgArry)
            callback(imgObj)
        }
    }
}

jQuery.fn.extend({

})

 

posted @ 2019-04-13 12:19  huihui2014  阅读(98)  评论(0)    收藏  举报