• 收藏一些常用的methods


    获取url 参数值
    getQueryString: function (name) {   let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");   let r = window.location.search.substr(1).match(reg);   if (r != null) return unescape(r[2]);     return null; },
     
    深度拷贝  
    copyDeep: function (obj) { let copy; if (typeof obj === 'object') { copy = aa(obj); } function aa(oo) { try { let c; if (!isNaN(oo.length)) { c = []; for (let i in oo) { let o = oo[i]; if (typeof o === 'object') c.push(aa(o)); else c.push(o); } } else { c = {}; for (let i in oo) { c[i] = oo[i]; } } return c; } catch (e) { return null; } } return copy; },
    全局提示框  
    myTips: function myTips(type, data) { let fullDom = approach.fullscreenElement(); if (!document.getElementById('warning')) { if(!fullDom) { $('body').append('<div id="warning"></div>'); } else if(fullDom && fullDom.id === 'vsAgainst') { $('#vsAgainst').append('<div id="warning"></div>'); } } let tip = ""; switch (type) { case "success": tip = $("<div class='successBox clearfix showBox'><p>" + data + "</p></div>"); break; case "warning": tip = $("<div class='warningBox clearfix showBox'><p>" + data + "</p></div>"); break; } $("#warning").append(tip); setTimeout(function () { tip.remove(); }, 4000); },
    分页查询
    pageSet: function (wholePage, page) { if (wholePage == 1) { return ""; } else if (wholePage <= 9) { var pages = ""; for (var i = 1; i <= wholePage; i++) { if (i == page) { pages += "<a data-page='" + i + "' class='now'>" + i + "</a>"; } else { pages += "<a data-page='" + i + "'>" + i + "</a>"; } } return "<a class='f' data-page='" + (page == 1 ? 1 : page - 1) + "'></a>" + pages + "<a class='l' data-page='" + (page == wholePage ? wholePage : page + 1) + "'></a>"; } else { var pages1 = "", pages2 = ""; if (page <= 3) { for (var i = 1; i < 5; i++) { if (i == page) { pages1 += "<a data-page='" + i + "' class='now'>" + i + "</a>"; } else { pages1 += "<a data-page='" + i + "'>" + i + "</a>"; } } for (var i = wholePage - 3; i <= wholePage; i++) { pages2 += "<a data-page='" + i + "'>" + i + "</a>"; } return "<a class='f' data-page='" + (page == 1 ? 1 : page - 1) + "'></a>" + pages1 + "<span>...</span>" + pages2 + "<a class='l' data-page='" + (page == wholePage ? wholePage : page + 1) + "'></a>" } else if (page > 3 && page < wholePage - 5) { for (var i = page - 1; i <= page + 1; i++) { if (i == page) { pages1 += "<a data-page='" + i + "' class='now'>" + i + "</a>"; } else { pages1 += "<a data-page='" + i + "'>" + i + "</a>"; } } for (var i = wholePage - 2; i <= wholePage; i++) { pages2 += "<a data-page='" + i + "'>" + i + "</a>"; } return "<a class='f' data-page='" + (page == 1 ? 1 : page - 1) + "'></a><a data-page='1'>1</a><span>...</span>" + pages1 + "<span>...</span>" + pages2 + "<a class='l' data-page='" + (page == wholePage ? wholePage : page + 1) + "'></a>" } else { for (var i = wholePage - 6; i <= wholePage; i++) { if (i == page) { pages2 += "<a data-page='" + i + "' class='now'>" + i + "</a>"; } else { pages2 += "<a data-page='" + i + "'>" + i + "</a>"; } } return "<a class='f' data-page='" + (page == 1 ? 1 : page - 1) + "'></a><a data-page='1'>1</a><span>...</span>" + pages2 + "<a class='l' data-page='" + (page == wholePage ? wholePage : page + 1) + "'></a>" } } },
    //判断空对象
      isEmptyObject: function (e) {
        let t;
        for (t in e)
          return !1;
        return !0
      },
        //url转为base64编码
          convertImgToBase64: function (url, callback, outputFormat) {
            url+='?random='+Math.random();
            let canvas = document.createElement("CANVAS"),
              ctx = canvas.getContext("2d"),
              img = new Image();
            img.crossOrigin = "";
            // img.setAttribute("crossOrigin", "anonymous");
            img.onload = function () {
              canvas.height = img.height;
              canvas.width = img.width;
              ctx.drawImage(img, 0, 0);
              var dataURL = canvas.toDataURL(outputFormat || "image/png");
              callback.call(this, dataURL);
              canvas = null;
            };
            img.src = url;
          },
    

      

         //将base64编码转换为Blob
          convertBase64UrlToBlob: function (urlData) {
            let bytes = window.atob(urlData.split(",")[1]); //去掉url的头,并转换为byte
            //处理异常,将ascii码小于0的转换为大于0
            let ab = new ArrayBuffer(bytes.length);
            let ia = new Uint8Array(ab);
            for (let i = 0; i < bytes.length; i++) {
              ia[i] = bytes.charCodeAt(i);
            }
            return new Blob([ab], {type: "image/jpeg", filename: "upload.jpg"});
          },
    

      

  • 相关阅读:
    Android消息机制(Handler)详述
    Android自定义组件-以饼状图并实现点击事件为例
    Markdown中tab的解析与4个空格 问题
    策略模式(Strategy)
    观察者模式(Observer)
    适配器模式(Adapter Class/Object)
    建造者模式(Builder)
    简单工厂模式、工厂方法模式、抽象工厂模式
    单例模式(Singleton)
    工具推荐:前后端一体化部署,效能提升开源“神器”
  • 原文地址:https://www.cnblogs.com/lisiyang/p/8127422.html
Copyright © 2020-2023  润新知