摘要:說明在項(xiàng)目中使用一些工具類,公共類是非常有必要的,不僅是后臺(tái),前段亦是一樣這里提供我收集的常用方法封裝代碼可以在資源共享,我的代碼中下載。注意字符串的拼接一定使用來拼接,否則容易造成瀏覽器卡頓或內(nèi)存溢出。
在項(xiàng)目中使用一些工具類,公共類是非常有必要的,不僅是后臺(tái),前段亦是一樣
這里提供我收集的常用方法封裝
代碼可以在資源共享,我的代碼中下載。
字符串的拼接一定使用StringBuffer來拼接,否則容易造成瀏覽器卡頓或內(nèi)存溢出。特別是針對(duì)一些執(zhí)行js效率不高的瀏覽器!!
經(jīng)常對(duì)輸入框里內(nèi)容清空,對(duì)textarea,可以直接$("textarea").empty();如果使用$("textarea").html("");也可能會(huì)造成瀏覽器內(nèi)存溢出!!
Date工具類/********************** date工具類 ***************/ Date.prototype.format = function(format){ var o = { "M+" : this.getMonth()+1, //month "d+" : this.getDate(), //day "h+" : this.getHours(), //hour "m+" : this.getMinutes(), //minute "s+" : this.getSeconds(), //second "q+" : Math.floor((this.getMonth()+3)/3), //quarter "S" : this.getMilliseconds() //millisecond } if(/(y+)/.test(format)) format=format.replace(RegExp.$1,(this.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; };公共工具類
/********************** 公共工具類 ***************/ var PublicUtil ={ isNotEmpty: function(val){ return !this.isEmpty(val); }, isEmpty: function(val){ if ((val==null || typeof(val)=="undefined")|| (typeof(val)=="string"&&val==""&&val!="undefined")){ return true; }else{ return false; } }, isDebug: function(){ if(this.isNotEmpty(configDebug)&&configDebug=="true"){ return true; }else{ return false; } }, //去除元素內(nèi)所有內(nèi)容 strIds:"#id1,#id2,#id3" emptyHtml: function(strIds){ try{ var ids = strIds.trim(",").split(","); $(ids).each(function(){ var obj = $(this.toString()); if(obj.length>0){ $(obj).each(function(){ $(this).html(""); }); }else{ obj.html(""); } }); }catch(ex){ if(PublicUtil.isDebug()){ throw new Error("js方法:【PublicUtil.emptyHtml(strIds)】,error!"); } } }, //去除元素的值 strIds:"#id1,#id2,#id3" emptyValue: function(strIds){ try{ var ids = strIds.trim(",").split(","); $(ids).each(function(){ var obj = $(this.toString()); if(obj.length>0){ $(obj).each(function(){ $(this).val(""); }); }else{ obj.val(""); } }); }catch(ex){ if(PublicUtil.isDebug()){ throw new Error("js方法:【PublicUtil.emptyValue(strIds)】,error!"); } } }, //去除Textarea內(nèi)所有內(nèi)容 strIds:"#id1,#id2,#id3" emptyTextarea: function(strIds){ try{ var ids = strIds.trim(",").split(","); $(ids).each(function(){ var obj = $(this.toString()); if(obj.length>0){ $(obj).each(function(){ $(this).empty(); $(this).val(""); }); }else{ obj.empty(); obj.val(""); } }); }catch(ex){ if(PublicUtil.isDebug()){ throw new Error("js方法:【PublicUtil.emptyTextarea(strIds)】,error!"); } } } }String 工具類
/********************** String工具類***************/ //trim去掉字符串兩邊的指定字符,默去空格 String.prototype.trim = function(tag) { if (!tag) { tag = "s"; }else { if (tag == "") { tag = ""; } else if (tag == "," || tag == "|" || tag == ";") { tag = "" + tag; }else { tag = "s"; } } eval("var reg=/(^" + tag + "+)|(" + tag + "+$)/g;"); return this.replace(reg, ""); }; //字符串截取后面加入... String.prototype.interceptString = function(len) { if (this.length > len) { return this.substring(0, len) + "..."; } else { return this; } } //將一個(gè)字符串用給定的字符變成數(shù)組 String.prototype.toArray = function(tag) { if (this.indexOf(tag) != -1) { return this.split(tag); }else { if (this != "") { return [this.toString()]; }else { return []; } } } //只留下數(shù)字(0123456789) String.prototype.toNumber= function() { return this.replace(/D/g, ""); } //保留中文 String.prototype.toCN= function() { var regEx = /[^u4e00-u9fa5uf900-ufa2d]/g; return this.replace(regEx, ""); } //轉(zhuǎn)成int String.prototype.toInt= function() { var temp = this.replace(/D/g, ""); return isNaN(parseInt(temp)) ? this.toString() : parseInt(temp); } //是否是以XX開頭 String.prototype.startsWith= function(tag){ return this.substring(0, tag.length) == tag; } //是否已XX結(jié)尾 String.prototype.endWith= function(tag){ return this.substring(this.length - tag.length) == tag; } //StringBuffer var StringBuffer = function() { this._strs = new Array; }; StringBuffer.prototype.append = function (str) { this._strs.push(str); }; StringBuffer.prototype.toString = function() { return this._strs.join(""); }; String.prototype.replaceAll = function(s1,s2){ return this.replace(new RegExp(s1,"gm"),s2); }Arry
/********************** Arry ***************/ //根據(jù)數(shù)據(jù)取得再數(shù)組中的索引 Array.prototype.getIndex = function(obj){ for (var i = 0; i < this.length; i++) { if (obj == this[i]) { return i; } } return -1; } //移除數(shù)組中的某元素 Array.prototype.remove= function (obj) { for (var i = 0; i < this.length; i++) { if (obj == this[i]) { this.splice(i, 1); break; } } return this; } //判斷元素是否在數(shù)組中 Array.prototype.contains= function (obj) { for (var i = 0; i < this.length; i++) { if (obj == this[i]) { return true; } } return false; }瀏覽器相關(guān)操作
/********************** 瀏覽器相關(guān)操作 ***************/ //進(jìn)入全屏模式, 判斷各種瀏覽器,找到正確的方法 var launchFullScreen = function (element) { if(element.requestFullscreen) { element.requestFullscreen(); } else if(element.mozRequestFullScreen) { element.mozRequestFullScreen(); } else if(element.webkitRequestFullscreen) { element.webkitRequestFullscreen(); } else if(element.msRequestFullscreen) { element.msRequestFullscreen(); } return true; } //退出全屏模式 var exitFullScreen = function () { if(document.exitFullscreen) { document.exitFullscreen(); } else if(document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if(document.webkitExitFullscreen) { document.webkitExitFullscreen(); } return false; } //cookie操作 var CookieUtil={ path: "/", domain: "demo.j2ee.com", add: function(name,val){ $.cookie(name, val, {expires: 7, path: this.path, domain: this.domain, secure: true}); }, remove: function(name){ $.cookie(name, null,{path: this.path, domain: this.domain}); }, get: function(name){ $.cookie(name,{path: this.path, domain: this.domain}); } } //error var error={ e_404: function(){ alertMessage("404","未找到改頁(yè)面!","warning"); }, e_500: function(){ alertMessage("500","服務(wù)器內(nèi)部錯(cuò)誤!","error"); }, e_403: function(){ alertMessage("403","權(quán)限不足!","warning"); } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/90148.html
摘要:全局安裝初始化默認(rèn)的文件下載插件到并在文件中加上的配置內(nèi)容對(duì)項(xiàng)目進(jìn)行打包自動(dòng)監(jiān)控文件的改變打包時(shí)顯示隱藏的模塊打包時(shí)顯示顯示詳細(xì)錯(cuò)誤信息安裝并將該配置到文件中入口出口加載器插件安裝完乘后執(zhí)行報(bào)錯(cuò),原因npminstall webpack -g // 全局安裝webpack npminit //初始化默認(rèn)的package.json文件 npminstall webpack -...
摘要:元素是通過指定的分隔符進(jìn)行分隔的。返回值一個(gè)字符串?dāng)?shù)組,執(zhí)行的操作與執(zhí)行的操作是相反的。返回值與沒有參數(shù)的方法返回的字符串相同。 1.javascript刪除元素節(jié)點(diǎn) IE中有這樣一個(gè)方法:removeNode(),這個(gè)方法在IE下是好使的,但是在Firefox等標(biāo)準(zhǔn)瀏覽器中就會(huì)報(bào)錯(cuò)了 removeNode is not defined,但是在核心JS中有一個(gè)操作DOM節(jié)點(diǎn)的方法叫:r...
摘要:文本整理了操作的一些常用的,根據(jù)其作用整理成為創(chuàng)建,修改,查詢等多種類型的,主要用于復(fù)習(xí)基礎(chǔ)知識(shí),加深對(duì)原生的認(rèn)識(shí)。方法主要是用于添加大量節(jié)點(diǎn)到文檔中時(shí)會(huì)使用到。 文本整理了javascript操作DOM的一些常用的api,根據(jù)其作用整理成為創(chuàng)建,修改,查詢等多種類型的api,主要用于復(fù)習(xí)基礎(chǔ)知識(shí),加深對(duì)原生js的認(rèn)識(shí)。 基本概念 在講解操作DOM的api之前,首先我們來復(fù)習(xí)一下一些基...
摘要:前言對(duì)于前端的性能話題,從來都沒有斷絕過。作為一個(gè)前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。前端發(fā)展以來,優(yōu)化方式,琳瑯滿目,有雅虎軍規(guī)等。所以,接下來我會(huì)從三個(gè)方面就前端性能進(jìn)行總結(jié)網(wǎng)絡(luò)方面操作及渲染方面數(shù)據(jù)方面。 前言 對(duì)于前端的性能話題,從來都沒有斷絕過。因?yàn)檫@個(gè)東西沒有最好,只有更好。而且往往也是業(yè)務(wù)的繁雜程度去決定優(yōu)化程度的。作為一個(gè)前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。它直接影響著我們...
摘要:前言對(duì)于前端的性能話題,從來都沒有斷絕過。作為一個(gè)前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。前端發(fā)展以來,優(yōu)化方式,琳瑯滿目,有雅虎軍規(guī)等。所以,接下來我會(huì)從三個(gè)方面就前端性能進(jìn)行總結(jié)網(wǎng)絡(luò)方面操作及渲染方面數(shù)據(jù)方面。 前言 對(duì)于前端的性能話題,從來都沒有斷絕過。因?yàn)檫@個(gè)東西沒有最好,只有更好。而且往往也是業(yè)務(wù)的繁雜程度去決定優(yōu)化程度的。作為一個(gè)前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。它直接影響著我們...
閱讀 1827·2019-08-30 15:55
閱讀 1024·2019-08-26 11:57
閱讀 529·2019-08-26 11:29
閱讀 3370·2019-08-26 10:49
閱讀 1924·2019-08-23 18:40
閱讀 1829·2019-08-23 16:04
閱讀 3119·2019-08-23 11:01
閱讀 2288·2019-08-23 10:56