/*** 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. 阿里感悟(九)-如何才能晋升
  2. 大神整理的python资源大全
  3. fastapi 传输文件存文件_揭秘|国内影视文件传输的真相,跨境文件传输更不简单...
  4. 讲讲 MySQL 中的 WAL 策略和 CheckPoint 技术
  5. 天津理工大学c语言上机题库,天津理工大学C语言上机报告题目加答案.doc
  6. stringbuffer字符串反转操作
  7. mono webservice问题请教
  8. windows版本修改,家庭版改专业版,专业版改教育版,或者是改家庭版
  9. php桌面快捷方式图标,window_Win10桌面图标没了怎么办?Win10桌面快捷方式消失了解决方法,不少使用windows10系统的朋友都 - phpStudy...
  10. 【并发编程】Once 基本用法和如何实现以及常见错误
  11. 解决苹果手机双击页面放大的问题
  12. Hive实现获取指定月的第一天和最后一天
  13. 戴尔服务器怎么u盘安装win7系统教程,戴尔电脑怎么用u盘装win7系统教程
  14. Tic-Tac-Toe:基于Minimax算法的人机对弈程序(python实现)
  15. 边城高级中学2021届高考成绩查询,坚定信心 不负韶华——边城高级中学开展2021届高考考前教育会...
  16. 视觉slam14讲学习(一)之se3上的定位表示:轨迹显示与轨迹误差
  17. 函数最值题目及答案_二次函数的最值问题举例(附练习答案)
  18. 亚马逊补单是怎么做的?
  19. 【动态规划dp】青蛙的烦恼(frog)
  20. 救火必备!问题排查与系统优化手册

热门文章

  1. Win10 - 电池信息报告ERROR:(0xfa5)
  2. 计算机课的万能导入,浅谈小学信息技术课的导入技巧
  3. 全功能DB数据库管理工具,超赞,完全支持所有主流数据库
  4. Ardunio开发实例-TSL2561数字光传感器
  5. 机房动环监控系统参数与功能
  6. 程序员做了年收百万的副业
  7. 从UI设计到开发,Lottie使用全流程
  8. 移动端vant input框点击时禁止弹出手机键盘
  9. 轻松解决在线QQ客服未启用状态
  10. 【腾讯云 Finops Crane 集训营】Finops Crane-英雄之剑