摘要:刪除空白結(jié)點(diǎn)封裝鼠標(biāo)坐標(biāo)標(biāo)準(zhǔn)下下封裝阻止瀏覽器默認(rèn)行為封裝阻止冒泡元素封裝獲取樣式表樣式元素要看到的樣式封裝級(jí)添加事件,事件類型,函數(shù)封裝級(jí)移除事件事件類型函數(shù)去除左右空格正則表達(dá)式替換轉(zhuǎn)駝峰正則找以后的第一個(gè)值替換將此值轉(zhuǎn)為大寫解析查
1.刪除空白結(jié)點(diǎn)
function delate(parent){ var lis=parent.childNodes; for(var i=0;i2.封裝鼠標(biāo)坐標(biāo) function hetpos(e){
//標(biāo)準(zhǔn)下 var x1=e.pageX; var y1=e.pageY; var pos={ x:x1, y:y1 } //IE下 if(pos.x==="undefined"){ pos.x=e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft); }else if(pos.y==="undefined"){ pos.y=e.clientY+(document.documentElement.scrollTop||document.body.scrollTop); } return pos; }3.封裝阻止瀏覽器默認(rèn)行為function stopDefault(e){ if(e.preventDefault){ return e.preventDefault(); }else{ return e.returnValue=false; } }4.封裝阻止冒泡function stopBubble(e){
if(e.stopPropagation){ return e.stopPropagation(); }else{ return e.cancelBubble=true; } }//stopBubble(元素)
5.封裝獲取樣式表樣式function getStyle(newobj,style){ if(newobj.currentStyle){ return newobj.currentStyle[style]; }else{ return getComputedStyle(newobj,null)[style]; } } //getStyle(dom元素,"要看到的css樣式");6.封裝DOM2級(jí)添加事件function addEvent( obj , type , fun){ if(obj.addEventListener){ return obj.addEventListener(type,fun,false); }else if(obj.attachEvent){ return obj.attachEvent("on"+type, fun); }else{ return obj["on"+type]=fun; } }//addEvent(dom,事件類型,函數(shù))
7.封裝DOM2級(jí)移除事件function remEvent( obj , type , fun){ if(obj.removeEventListener){ return obj.removeEventListener(type,fun,false); }else if(obj.detachEvent){ return obj.detachEvent("on"+type, fun); }else{ return obj["on"+type]=null; } } //remEvent( dom , 事件類型 , 函數(shù))8.去除左右空格function trim(str){ var reg=/^s+|s+$/g;//正則表達(dá)式 return str.replace(reg,"");//替換 } // console.log(trim(str));9.轉(zhuǎn)駝峰function tf(str1){ var reg1=/-(w){1}/g;//正則 找-以后的第一個(gè)值 var strn=str1.replace( reg1 , function(){//替換 return arguments[1].toUpperCase();//將此值轉(zhuǎn)為大寫 }); return strn; } // console.log(tf(str1));10.解析url(1)function jx(str2){ var en=str2.indexOf("?");//查找?下標(biāo) 記錄 var news=str2.slice(en+1);//截取?以后的所有值 var arr=news.split("&");//以&轉(zhuǎn)數(shù)組 var obj={} for(var i=0;i(3)function getUrl(name){
var reg=new RegExp("(^|&)"+name+"([^&]*)($|&)"); var arr=location.search.substr(1).match(reg); if(arr){ return decodeURI(arr[2]); } } getUrl("要查詢名")11.集合var $={ //查找 找到返回下標(biāo) 找不到返回-1 hasClass:function(newo,clas){ var arr=newo.className.split(/s+/);//以空格轉(zhuǎn)數(shù)組 var con = -1;//賦初始值 for(var i=0;i
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/96414.html
摘要:怎么樣才能把項(xiàng)目做的好一點(diǎn)或者更好首先,在老板看來(lái),他肯定希望今天提的需求可以立馬就上線。關(guān)于注釋注釋是有必要的,這個(gè)對(duì)個(gè)人和他人都是有好處的。 之前做開發(fā)的時(shí)候?qū)?xiàng)目完全沒(méi)有一個(gè)整體的思考,需求來(lái)了就知道做,只關(guān)心自己做的那部分的功能,做完拉到。但最近所做的項(xiàng)目中,遇到了不少問(wèn)題,自己都忍不住吐槽起來(lái)了。如:項(xiàng)目經(jīng)常性延期、代碼冗余、添加一個(gè)很小的新功能都需要改動(dòng)很多地方,還對(duì)之前的...
摘要:怎么樣才能把項(xiàng)目做的好一點(diǎn)或者更好首先,在老板看來(lái),他肯定希望今天提的需求可以立馬就上線。關(guān)于注釋注釋是有必要的,這個(gè)對(duì)個(gè)人和他人都是有好處的。 之前做開發(fā)的時(shí)候?qū)?xiàng)目完全沒(méi)有一個(gè)整體的思考,需求來(lái)了就知道做,只關(guān)心自己做的那部分的功能,做完拉到。但最近所做的項(xiàng)目中,遇到了不少問(wèn)題,自己都忍不住吐槽起來(lái)了。如:項(xiàng)目經(jīng)常性延期、代碼冗余、添加一個(gè)很小的新功能都需要改動(dòng)很多地方,還對(duì)之前的...
摘要:引言本期精讀的文章是介紹了八種條件渲染方式。此時(shí)小王接到了需求,終于維護(hù)了一個(gè)大項(xiàng)目。更多討論討論地址是精讀八種條件渲染如果你想?yún)⑴c討論,請(qǐng)點(diǎn)擊這里,每周都有新的主題,周末或周一發(fā)布。 1 引言 本期精讀的文章是:8 React conditional rendering methods 介紹了八種 React 條件渲染方式。 模版條件渲染非常常見,遇到的時(shí)候往往會(huì)隨機(jī)選擇一種方式使用...
摘要:官方解釋工廠是構(gòu)造方法的抽象,抽象了創(chuàng)建具體對(duì)象的過(guò)程。工廠方法模式的實(shí)質(zhì)是定義一個(gè)創(chuàng)建對(duì)象的接口,但讓實(shí)現(xiàn)這個(gè)接口的類來(lái)決定實(shí)例化哪個(gè)類。 前言 上一章回顧了JS對(duì)象的屬性類型,那么除了我們常用的new Object()構(gòu)造函數(shù)創(chuàng)建對(duì)象和字面量方式創(chuàng)建對(duì)象的方式外,還需要用到更多的模式來(lái)解決對(duì)象被多次復(fù)用的問(wèn)題。什么意思呢?就是我們很有可能會(huì)在各個(gè)地方去使用已經(jīng)創(chuàng)建過(guò)的對(duì)象,但是對(duì)象...
閱讀 3664·2021-10-11 10:58
閱讀 2252·2021-10-08 10:05
閱讀 2035·2021-09-27 13:34
閱讀 3578·2019-08-30 15:53
閱讀 2736·2019-08-30 14:02
閱讀 3564·2019-08-29 16:55
閱讀 625·2019-08-29 15:41
閱讀 1073·2019-08-29 15:23