/*** Created by 张云山 on 2016/12/9.*/(function(wins,doct){wins.fasicon = function(){this.name = "fasicon构造体";this.Explain_text = "构造说明,详情查看请实例化:【new fasicon().Explain()】查看";};fasicon.prototype = {Explain:function(){arguments.callee.Explain = "fasicon方法备注说明";var ExplainData = {};for (var i in this){ExplainData[i] = this[i].Explain||this[i];};return ExplainData;},AddScript:function(url,fn){/*@url:script样式文件引入地址@fn:加载完成后的回调*/arguments.callee.Explain = "添加script脚本";fn = fn || new Function();this.AddElement("script",function(e){e.src = url;e.type = "text/javascript";e.onload = function(e){fn();};})},AddLink:function(url,fn){/*@url:link样式文件引入地址@fn:加载完成后的回调*/arguments.callee.Explain = "添加Link(style)样式";fn = fn || new Function();this.AddElement("link",function(e){e.rel="stylesheet";e.href = url;e.onload = function(){fn;}})},AddElement:function(name,fn,obj){/*@name:需创建的节点标签名@fn:创建后的回调函数,返回当前节点对象参数【fn(e)】@obj:放置的容器*/arguments.callee.Explain = "创建DOM节点";name = name || "";fn = fn || new Function();var newObj = obj;if(obj && obj.length){for(var i = 0,len = newObj.length ; i <len;i++){var Element = document.createElement(name);fn(Element);obj = newObj[i] || document.getElementsByTagName("head")[0];obj.appendChild(Element);}return;}var Element = document.createElement(name);fn(Element);obj = obj || document.getElementsByTagName("head")[0];obj.appendChild(Element);return Element;},FromAtParamsObject:function(data){/*@data:需要格式化成URL的数据,类型为{}*/arguments.callee.Explain = "数据格式化成URL参数";var arr = [];data = data || {};for (var name in data) {arr.push(encodeURIComponent(name) + "=" + encodeURIComponent(data[name]));}arr.push(("v=" + Math.random()).replace(".",""));return arr.join("&");},FromAtParamsURL:function(data) {/*@data:需要格式化成的URL参数,默认返回浏览器Url地址数据。*/arguments.callee.Explain = "地址URL参数格式化成数据";var locdata = (function(){if(typeof data == "string"){return data.split("&")};return null;})() || decodeURI(location.href).replace(/^.+\?/,"").split("&"),newlocdata = {};for(var i = 0,len = locdata.length ; i < len;i++){newlocdata[locdata[i].split("=")[0]] = locdata[i].split("=")[1];};return newlocdata;},ajax:function(options) {/*@示例:ajax({url: "./TestXHR.aspx", //请求地址type: "POST", //请求方式data: { name: "super", age: 20 }, //请求参数dataType: "json",success: function (response, xml) {// 此处放成功后执行的代码},fail: function (status) {// 此处放失败后执行的代码}});*/arguments.callee.Explain = "ajax请求";options = options || {};options.type = (options.type || "GET").toUpperCase();options.dataType = options.dataType || "json";/*//格式化参数*/var params = this.FromAtParamsObject(options.data);

//创建 - 非IE6 - 第一步if (window.XMLHttpRequest) {var xhr = new XMLHttpRequest();} else { //IE6及其以下版本浏览器var xhr = new ActiveXObject('Microsoft.XMLHTTP');}

/*//接收 - 第三步*/xhr.onreadystatechange = function () {if (xhr.readyState == 4) {var status = xhr.status;if (status >= 200 && status < 300) {options.success && options.success(xhr.responseText, xhr.responseXML);} else {options.fail && options.fail(status);}}}

/*//连接 和 发送 - 第二步*/if (options.type == "GET") {xhr.open("GET", options.url + "?" + params, true);xhr.send(null);} else if (options.type == "POST") {xhr.open("POST", options.url, true);//设置表单提交时的内容类型xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");xhr.send(params);}},get:function(url,data,fn,dataType){/*@url:地址@data:数据参数@fn:回调@dataType:返回的数据格式,默认json*/arguments.callee.Explain = "ajax-【get】请求";url = url || "";data = data || {};fn = fn || new Function();dataType = dataType || "json";if(typeof data == "function"){fn = data;data = {};};this.ajax({url: url,type: "GET",data: data,dataType: "json",success: fn,fail: data.fn});},post:function(url,data,fn,dataType){/*@url:地址@data:数据参数@fn:回调@dataType:返回的数据格式,默认json*/arguments.callee.Explain = "ajax-【post】请求";url = url || "";data = data || {};dataType = dataType || "json";fn = fn || new Function();if(typeof data == "function"){fn = data;data = {};}this.ajax({url: url,type: "POST",data: data,dataType: dataType,success: fn,fail: data.fn});},Require:function(scriptData,fn){/*@criptData:需要加载的js库的引用地址或地址的集合(数组)@fn:所有js库加载完成后回调函数*/arguments.callee.Explain = "动态按需加载js(非阻塞模式)";fn = fn || new Function();var url = "http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js";//默认加载jqueryvar index = 0;var len = 0;var _this = this;switch (typeof scriptData){case "string":this.AddScript(scriptData,function(){fn.call(_this);});break;case "object":len = scriptData.length;var AddScript_for = function (index2){if(index == len){fn.call(_this);return;};var _this2 = arguments.callee;_this.AddScript(scriptData[index2],function(){index += 1;_this2(index);});};AddScript_for(index);break;default:fn = scriptData;this.AddScript(url,function(){fn.call(_this);});break;};},extend:function(Obj){/*@Obj:对象数据*/arguments.callee.Explain = "函数扩展机制";Obj = Obj || {};for (var i in Obj){this[i] = Obj[i];};},RegExp_VFN:function(StringObj){/*@StringObj 字符串String,@说明数据验证*/arguments.callee.Explain = "正则表达式,数据验证。";StringObj = StringObj || "";var a = function(a,b){a = a || "";b = b || "";return StringObj.match(new RegExp(a,b));};return {number : function(b,数字){/*@b 字符串String,@匹配模式,例如img*/return a("[0-9]",b);},phone : function(b,手机){return a("^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$",b);},email : function(b,邮箱){return a("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*",b);},ID : function(b,身份证){return a("^(^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$)|(^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])((\\d{4})|\\d{3}[Xx])$)$",b);},zipcode : function(b,邮编){return a("^[1-9]\\d{5}(?!\\d)$",b);},date : function(b,日期){return a("^[1-9][0-9]{3}(\\s*|\\S){2}[0-1]{0,1}[0-9](\\s*|\\S)[0-3]{0,1}[0-9]$",b);},url : function(b,网址){return a("https?:\\/\\/(([a-zA-Z0-9_-])+(\\.)?)*(:\\d+)?(\\/((\\.)?(\\?)?=?&?[a-zA-Z0-9_-](\\?)?)*)*$",b);}};},IEhacker:function(){/*@IE兼容处理*/arguments.callee.Explain = "IE所有浏览器兼容问题";if(!doct.getElementsByClassName){//getClassNamedoct.getElementsByClassName = function(className){var getElement = [];className = className || "";var Tag = doct.getElementsByTagName("*");for(var i = 0, len = Tag.length;i<len;i++){if(Tag[i].className.indexOf(className) != -1){getElement.push(Tag[i]);};};return getElement;};};},isHTML:function(e){/*判断是否是html字符串*/arguments.callee.Explain = "判断是否是html字符串";var ret = new RegExp("<(.)*?>|<\\/(.)*?>","img");var JQElement = doct.createElement("div");if(typeof e == "string" && e.match(ret) && e.match(ret).length > 0){JQElement.innerHTML = e;return JQElement;};if(typeof e == "object"){if(e.constructor && e.constructor.__proto__ && e.constructor.__proto__.name == "HTMLElement"){JQElement.innerHTML = e.outerHTML;return JQElement;}else if(navigator.appName == "Microsoft Internet Explorer"){JQElement.innerHTML = e.outerHTML;return JQElement;};};return null;},is_leap:function(year) {/*@/判断是否为闰年@year:年份*/arguments.callee.Explain = "判断是否为闰年";return (year%100==0?res=(year%400==0?1:0):res=(year%4==0?1:0));},is_Month:function(Month,dateYear){/*@判断月份大小并返回当月天数@Month:月份@dateYear:年份*/arguments.callee.Explain = "判断月份大小并返回当月天数";dateYear = dateYear || new Date().getFullYear();var dateindex = 31;if(Month % 2 == 0){dateindex = 30;if(Month == 2){(this.is_leap(dateYear))?dateindex = 29:dateindex = 28;};};if(Month >= 8){(Month % 2 == 0)?dateindex = 31:dateindex = 30;};return dateindex;},each:function(arr,fn){/*@each封装*/arguments.callee.Explain = "each封装";for (var i = 0 ; i < arr.length;i++){if(fn.call(arr[i],i,arr[i]) === false){break;};};},JQ_DOM:function(JQname,JQ_DOM){/*@仿jquery架构,可扩展。@JQname:库名@JQ_DOM:库名代词例如"$_"*/arguments.callee.Explain = "JQ架构";JQname = JQname || "JQ";JQ_DOM = JQ_DOM || "$_";var win_A;var win_$_;var fasicon = this;(function(win,doc,fn){var events = [];//拷贝核心方法var publicEvent = ["extend","fn"];//公共核心方法var removefn = [];var A = JQname;//原型库var $_ = JQ_DOM;//库名win_$_ = $_;win_A = function(e,contentText){//=======选择器模块==scontentText = contentText || [];var getElement = [];switch(typeof e){case "object":getElement = e;contentText.push(getElement);break;case "string":var m = new RegExp("(?:#(\\w+)|\\.(\\w+)|(\\w+))").exec(e);if(m){if(m[1]){getElement[0] = doc.getElementById(m[1]);//idName}else if(m[2]){getElement = doc.getElementsByClassName(m[2]);//className}else if(m[3]){getElement = doc.getElementsByTagName(m[3]);//TagName};};var ishtml = fasicon.isHTML(e);if(ishtml){getElement = ishtml.children || ishtml.childNodes;};break;default:getElement = [];break;};var query = win_A.prototype;contentText.push.apply(contentText,getElement);query.contentText = contentText;return query;//=======选择器模块==e};// ===========方法处理s=========win_A.fn = {extend:function(obj){//事件方法处理for(var i in obj){this[i] = obj[i];};}};win_A.extend = function(obj){//核心方法处理events.push(obj)for(var i in obj){this[i] = obj[i];};};// ===========方法处理e=========

// ===========方法扩展s=========//【核心方法扩展s】win_A.extend({noConflict:function(name){//多库共存var new$ = win_$_;win_$_ = undefined;if(name){win[name] = new$;}return new$;},query:win_A,query_V:"0.1",query_Name:A,query_Conflict:win_$_,//库名each:fasicon.each});win_A.fn.extend({append:function(obj){//追加元素for(var i = 0, len = this.contentText.length;i<len;i++){this.contentText[i].innerHTML += obj;};return this;},attr:function(attrName,attrValue){//属性读写if(attrName && this.contentText[0]){if(attrValue){this.contentText[0].setAttribute(attrName,attrValue)}return this.contentText[0].getAttribute(attrName);}},html:function(innerHTML){//html读写if(this.contentText[0]){if(innerHTML != undefined){win_A.each(this.contentText,function(i,e){e.innerHTML = innerHTML;});}return this.contentText[0].innerHTML;}},find:function(obj,contentText){obj = obj.toLowerCase() || "";contentText = contentText || [];for(var i = 0, len = this.contentText.length;i<len;i++){for (var j = 0,jleg = this.contentText[i].children.length;j<jleg;j++){var m = new RegExp("(?:#(\\w+)|\\.(\\w+)|(\\w+))","img").exec(obj);if(m){if(m[1]){//idif(this.contentText[i].children[j].id.toLowerCase() == obj){contentText.push(this.contentText[i].children[j]);};}else if(m[2]){//classif(this.contentText[i].children[j].className.toLowerCase() == obj){contentText.push(this.contentText[i].children[j]);};}else if(m[3]){//tagif(this.contentText[i].children[j].tagName.toLowerCase() == obj){contentText.push(this.contentText[i].children[j]);};};}};};var _this = {contentText:contentText};for(var i in this){if(i != "contentText"){_this[i] = this[i];};};return _this;}});//【核心方法扩展e】

//事件方法扩展var eventsFn = ["click"];//event事件数组for (var i = 0 ; i < eventsFn.length;i++){win_A.fn[eventsFn[i]] = (function(name){//写入事件return function (fn){var context = this.contentText;for(var i = 0 ; i < context.length;i++){removefn.push({context:context,fn:fn});if(doc.addEventListener){context[i].addEventListener(name,fn);}else{context[i].attachEvent("on"+name,fn);};};return this;};})(eventsFn[i]);win_A.fn["un"+eventsFn[i]] = (function(name){//移除事件return function (fn){fn = fn || new Function();for(var i = 0 ; i < removefn.length;i++){var index = 0;for(var j = 0 ; j < removefn[i].context.length ; j++){if(removefn[i].context[j] == this.contentText[j]){index++;};};if(index == removefn[i].context.length){var context = this.contentText;for(var a = 0 ; a < context.length;a++){if(doc.removeEventListener){//非IEcontext[a].removeEventListener(name,removefn[i].fn);}else{//IEcontext[a].detachEvent("on"+name,removefn[i].fn);};};};};fn();return this;};})(eventsFn[i]);};// ===========方法扩展e=========win_A.prototype = win_A.fn;win_A.prototype.fn = win_A.fn;fn(win,doc,win_A,events,publicEvent);})(wins,doct,function(win,doc,A,events,publicEvent){win_$_ = function(a){return new A(a);};for(var i = 0 ; i < events.length ; i++){for(var j in events[i]){win_$_[j] = events[i][j];};};for(var i = 0 ; i < publicEvent.length;i++){win_$_[publicEvent[i]] = A[publicEvent[i]];};win_$_.prototype = A.prototype;});return win_$_;},ArrayExtend:function(){/*@:数组扩展*/arguments.callee.Explain = "数组扩展";//======数组去重复Array.prototype.unique1 = function(){var res = [this[0]];for(var i = 1; i < this.length; i++){var repeat = false;for(var j = 0; j < res.length; j++){if(this[i] == res[j]){repeat = true;break;};};if(!repeat){res.push(this[i]);};};return res;};// 计算数组中的最大值Array.prototype.max = function() {return Math.max.apply({}, this);}

// 计算数组中的最小值Array.prototype.min = function() {return Math.min.apply({}, this);}

// 复制数组Array.prototype.copy = function() {return [].concat(this);};

// 去除数组中指定元素,只能去除一个,如果想多个,之前先用unique处理Array.prototype.remove = function(value){for (var i = 0, len = this.length; i < len; i++) {if (this[i] == value) {this.splice(i, 1);break;}}return this;}

// 判断数组中是否存在指定元素,返回索引值Array.prototype.inArray = function(value) {var index = -1, key;for (key in this) {if (this[key] == value) {index = key;break;}}return index;}

},StringExtend:function() {/*@:字符串扩展*/arguments.callee.Explain = "字符串扩展";// 重复字符串String.prototype.repeat = function(n) {return new Array(n+1).join(this);}

// 替换全部String.prototype.replaceAll = function(str1, str2) {return this.replace(new RegExp(str1, "gm"), str2);}

// 清除空格String.prototype.trim = function() {return this.replace(/^\s*(.*?)\s+$/, "$1");}

},returnLunarDateToB:function(dateA,dateB,dateC){/*@dateA:年份@dateB:月分@dateC:日期*/arguments.callee.Explain="公历转农历";var initData = new Date();dateA = dateA || initData.getFullYear();dateB = dateB || initData.getMonth()+1;dateC = dateC || initData.getDate();var LunarDate = {madd: new Array(0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334),HsString: '甲乙丙丁戊己庚辛壬癸',EbString: '子丑寅卯辰巳午未申酉戌亥',NumString: "一二三四五六七八九十",MonString: "正二三四五六七八九十冬腊",CalendarData: new Array(0xA4B, 0x5164B, 0x6A5, 0x6D4, 0x415B5, 0x2B6, 0x957, 0x2092F, 0x497, 0x60C96, 0xD4A, 0xEA5, 0x50DA9, 0x5AD, 0x2B6, 0x3126E, 0x92E, 0x7192D, 0xC95, 0xD4A, 0x61B4A, 0xB55, 0x56A, 0x4155B, 0x25D, 0x92D, 0x2192B, 0xA95, 0x71695, 0x6CA, 0xB55, 0x50AB5, 0x4DA, 0xA5B, 0x30A57, 0x52B, 0x8152A, 0xE95, 0x6AA, 0x615AA, 0xAB5, 0x4B6, 0x414AE, 0xA57, 0x526, 0x31D26, 0xD95, 0x70B55, 0x56A, 0x96D, 0x5095D, 0x4AD, 0xA4D, 0x41A4D, 0xD25, 0x81AA5, 0xB54, 0xB6A, 0x612DA, 0x95B, 0x49B, 0x41497, 0xA4B, 0xA164B, 0x6A5, 0x6D4, 0x615B4, 0xAB6, 0x957, 0x5092F, 0x497, 0x64B, 0x30D4A, 0xEA5, 0x80D65, 0x5AC, 0xAB6, 0x5126D, 0x92E, 0xC96, 0x41A95, 0xD4A, 0xDA5, 0x20B55, 0x56A, 0x7155B, 0x25D, 0x92D, 0x5192B, 0xA95, 0xB4A, 0x416AA, 0xAD5, 0x90AB5, 0x4BA, 0xA5B, 0x60A57, 0x52B, 0xA93, 0x40E95),Year: null,Month: null,Day: null,TheDate: null,GetBit: function(m, n){return (m >> n) & 1;},e2c: function(){this.TheDate = (arguments.length != 3) ? new Date(): new Date(arguments[0], arguments[1], arguments[2]);var total, m, n, k;var isEnd = false;var tmp = this.TheDate.getFullYear();total = (tmp - 1921) * 365 + Math.floor((tmp - 1921) / 4) + this.madd[this.TheDate.getMonth()] + this.TheDate.getDate() - 38;if (this.TheDate.getYear() % 4 == 0 && this.TheDate.getMonth() > 1) {total++;}for (m = 0; ; m++) {k = (this.CalendarData[m] < 0xfff) ? 11: 12;for (n = k; n >= 0; n--) {if (total <= 29 + this.GetBit(this.CalendarData[m], n)) {isEnd = true;break;}total = total - 29 - this.GetBit(this.CalendarData[m], n);}if (isEnd)break;}this.Year = 1921 + m;this.Month = k - n + 1;this.Day = total;if (k == 12) {if (this.Month == Math.floor(this.CalendarData[m] / 0x10000) + 1) {this.Month = 1 - this.Month;}if (this.Month > Math.floor(this.CalendarData[m] / 0x10000) + 1) {this.Month--;}}},GetcDateString: function(){var tmp = "";tmp += this.HsString.charAt((this.Year - 4) % 10);tmp += this.EbString.charAt((this.Year - 4) % 12);tmp += "年 ";if (this.Month < 1) {tmp += "(闰)";tmp += this.MonString.charAt(-this.Month - 1);} else {tmp += this.MonString.charAt(this.Month - 1);}tmp += "月";tmp += (this.Day < 11) ? "初": ((this.Day < 20) ? "十": ((this.Day < 30) ? "廿": "三十"));if (this.Day % 10 != 0 || this.Day == 10) {tmp += this.NumString.charAt((this.Day - 1) % 10);}return tmp;},GetLunarDay: function(solarYear, solarMonth, solarDay) {if (solarYear < 1921 || solarYear > 2020) {return "";} else {solarMonth = (parseInt(solarMonth) > 0) ? (solarMonth - 1): 11;this.e2c(solarYear, solarMonth, solarDay);return this.GetcDateString();}}};return LunarDate.GetLunarDay(dateA,dateB,dateC);},returnLunarDate:function returnDate(dateYear,dateMonth){/*@dateYear:年份@dateMonth:月份*/arguments.callee.Explain="返回日历数据";var initData = new Date();dateYear = dateYear || initData.getFullYear();dateMonth = dateMonth || initData.getMonth()+1;var dateDay = new Date(dateYear,dateMonth-1,1).getDay(),//星期dateindex = this.is_Month(dateMonth,dateYear),DayData = new Array(42),newDayAll = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],newDayAllIndex = 0;for(var i = 0 ; i < DayData.length ; i++){if(i % 7 == 0){newDayAllIndex = 0;}else{newDayAllIndex ++;};DayData[i] = {week:newDayAllIndex,name:newDayAll[newDayAllIndex],Explain:"说明:" +"==@ LunarCalendar:当天对应的农历;"+"==@ dateDayIndex:该参数是指当月的1号的索引值为dateDayIndex,即"+dateDay+"==@ day:当天号数;"+"==@ getDayAll:当天总日期;"+"==@ getDateIdex:参数为当月总天数;"+"==@ getDateIdex_Lastmonth:参数为上月总天数;"+"==@ getDateIdex_Nextmonth:参数为下月总天数;"+"==@ name:当天星期数【文字】(星期一/星期六);"+"==@ week:当天星期数【数字】(0-6);",dateDayIndex:dateDay,getDateIdex:this.is_Month(dateMonth,dateYear),getDateIdex_Lastmonth:this.is_Month(dateMonth-1,dateYear),getDateIdex_Nextmonth:this.is_Month(dateMonth+1,dateYear)};var returnLunarDateToB_index = 0;if(i >= dateDay && i < dateindex+dateDay){DayData[i].day = i-dateDay+1;}else if(i < dateDay){DayData[i].day = this.is_Month(dateMonth-1,dateYear)-dateDay+i+1;switch (dateindex){case 30:DayData[i].day = this.is_Month(dateMonth-1,dateYear)-dateDay+i+1;break;case 31:DayData[i].day = this.is_Month(dateMonth,dateYear)-dateDay+i;if(dateMonth == 8 || dateMonth == 3){DayData[i].day = this.is_Month(dateMonth-1,dateYear)+1-dateDay+i;};if(dateMonth == 1){DayData[i].day = this.is_Month(12,dateYear)+1-dateDay+i;};break;};returnLunarDateToB_index = -1;}else{DayData[i].day = i-dateindex-dateDay+1;returnLunarDateToB_index = 1;};DayData[i].LunarCalendar = this.returnLunarDateToB(dateYear,dateMonth+returnLunarDateToB_index,DayData[i].day);DayData[i].getDayAll = (function(){var dateMonth2 = dateMonth+returnLunarDateToB_index;if(dateMonth2 > 12){return dateYear+1;}else if(dateMonth2 < 1){return dateYear-1;}return dateYear;})()+"-"+(function(){var dateMonth2 = dateMonth+returnLunarDateToB_index;if(dateMonth2 > 12){return 1;}else if(dateMonth2 < 1){return 12;}return dateMonth2;})()+"-"+DayData[i].day;};return DayData;},MaxImages:function(obj,fn){/*@obj:layer弹层参数,具体参数如下方实例。@fn:弹层成功回调*/arguments.callee.Explain = "图片放大弹层";if(!wins.layer){alert("页面无layer.js,请先引入layer.js");return;};$("img").click(function(){obj = obj || {};var _this = this;obj.title = obj.title || "图片查看"+(function(){return "【"+($(_this).attr("title") || $(_this).attr("src"))+"】";})();obj.bool = obj.bool || true;if(obj.bool){layer.closeAll();};layer.open({title:obj.title||false,type:obj.type||1,//类型content:'<img width="100%" s height="100%" src="'+$(this).attr("src")+'">',//内容maxWidth:obj.width || "100%",//宽高maxmin:obj.maxmin || true,//是否最大化shade:obj.shade || 0,//遮罩层moveOut:obj.moveOut || true,//是否过界moveType:obj.moveType || 1,//拖拽风格move:".layui-layer-content,.layui-layer-title",min:obj.min || new Function(),max:obj.max || new Function(),success:fn || new Function()});});}};fasicon.prototype.IEhacker();//IE兼容处理fasicon.prototype.ArrayExtend();//数组扩展fasicon.prototype.StringExtend();//字符串扩展})(window,document);

说明:本js兼容IE,可扩展。

转载于:https://www.cnblogs.com/zys8119/p/6182445.html

fasicon.js (无二维码版,如需要js创建二维码版本可联系我:770959294@qq.com)相关推荐

  1. C#_WPF中创建二维码、识别二维码

    C#_WPF中创建二维码.识别二维码 原文: C#_WPF中创建二维码.识别二维码 第三方库: WPFMediaKit.dll (WPFMediaKit摄像头处理) zing.dll NuGet安装这 ...

  2. 后天淘宝客系统二次开发版【需后天授权码】此源码是二开后的

    声明:必须是你已经购买过后天淘宝客系统授权码的.绑定了域名.才可以使用.这个只是二次开发过后的源码.源码是通用的. 然后将本站系统买去使用并用你的授权码才可以正常使用. 下面大多数功能都是找官方二次开 ...

  3. 【Vue原理】Methods - 源码版

    写文章不容易,点个赞呗兄弟 专注 Vue 源码分享,文章分为白话版和 源码版,白话版助于理解工作原理,源码版助于了解内部详情,让我们一起学习吧 研究基于 Vue版本 [2.5.17] 如果你觉得排版难 ...

  4. h5 实现扫码二维码及条形码(js多种实现方式)

    方式一. 只识别二维码 实现方式一 jsQR 个人预览页面网址只扫码二维码 GitHub jsQR inde.html <!DOCTYPE html> <html><he ...

  5. uni-app/js/小程序/生成支付二维码图片,类似于支付宝和微信商家码

    业务需求 一个电子商务公司需要一个支付功能,该支付功能通过微信扫码或者支付宝扫码实现的,并且该二维码商户可以下载下来,类似于微信商家码.如下图,鉴于公司相关的保密协议,我马赛克了头部和中间的商标相关说 ...

  6. Java入门123:一个老鸟的Java学习心得(二维码版)

    Java入门123:一个老鸟的Java学习心得(二维码版)清华大学出版社 Java入门123--一个老鸟的Java学习心得(二维码版)充分考虑了初学Java的种种困难,讲解细致入微,抽丝剥茧,层层推进 ...

  7. JS 生成二维码实现(qrcode.js)

    qrcode.js源码地址: https://github.com/jeromeetienne/jquery-qrcode 使用 页面引入QRCode.js和JQuery.js <script ...

  8. js 将微信二维码转为url,qrcodeJs解析二维码,qrcode.decode is not a function报错

    前言 工作中遇到的需求:用户上传相册中选中的图片,判断这个图片里的二维码是不是微信二维码,如果是则上传到服务器:不是,则提示用户重新上传. 百度了下,qrcode.js是一个用于生成二维码的 Java ...

  9. AR.js开发问题详解(二维码识别不出来及AR二维码如何进行训练)

    AR.js开发问题详解(二维码识别不出来及AR二维码如何进行训练) 1.      大家碰到的很多都是二维码识别不出来的情况. 原因:周围环境的光太强或太暗,遮挡了二维码的信息,摄像头识别不到全部的信 ...

  10. js生成二维码,并将生成的二维码进行保存(手动下载)

    生成二维码并保存为图片,点击下载此二维码 简单实现的效果,如有更好的请指教 利用jquery 加jquery.qrcode //外部的js<script src="./jquery/2 ...

最新文章

  1. java errorlevel_bat中errorlevel与%errorlevel%的区别
  2. oracle事务数统计,oracle函数与事务
  3. Azure:不能把同一个certificate同时用于Azure Management和RDP
  4. 怎么用python处理数据_Python数据清洗 - 洗什么?怎么洗?看完就明白了
  5. hash函数查找和ASL计算
  6. python中怎么精确20位_Python中的精确处理
  7. 控件的WM_NOTIFY消息映射
  8. ASP中随机函数Randomize的使用
  9. 二维码编解码 Java调用示例代码
  10. ACM金牌学长,算法竞赛经验分享
  11. lnmp团队开发环境docker环境搭建PHP7.2 mac系统为例
  12. python中pygame学习——碰碰球(简单版)
  13. tree.js实现3D效果,官网demo
  14. 饥荒dns服务器未响应,DNS服务器未响应怎么办
  15. 微软官方硬盘备份软件SyncToy
  16. 【转】我和权威的故事
  17. php 判断姓名,姓名的判断和命名方法
  18. 解决微星主板点击睡眠后电脑死机
  19. 网易2017春招 魔力手环 矩阵快速幂
  20. 亚马逊日本站好不好做?怎么选品?有什么注意事项?

热门文章

  1. atv61/71变频器驱动板图纸施耐德变频器atv61驱动板图纸atv71
  2. SecureCRT乱码解决
  3. 07 AVR单片机ATmega8工业总线项目的通信处理以及实现
  4. [论文]知网下载pdfcaj转pdf
  5. 万兆网络变压器高频特性要求及生产工艺对其的影响
  6. [GBase 8s 教程]GBase 8s 自动增长(AUTO INCREMENT)
  7. 【云原生之Docker实战】使用Docker部署StackEdit在线Markdown编辑器
  8. 《大上海》《血滴子》票房不佳很可能都赔钱
  9. 代码chaid_SPSS术语中英文对照详解
  10. 地图sev-clt文件详解