简单的js逻辑封装

1.删除空白结点

function delate(parent){
    var lis=parent.childNodes;
        for(var i=0;i

2.封装鼠标坐标

function hetpos(e){

    //标准下
    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.封装阻止浏览器默认行为

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级添加事件

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,事件类型,函数)

7.封装DOM2级移除事件

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 , 事件类型 , 函数)

8.去除左右空格

function trim(str){
            var reg=/^\s+|\s+$/g;//正则表达式
            return str.replace(reg,'');//替换
        }
        // console.log(trim(str));

9.转驼峰

function tf(str1){
            var reg1=/-(\w){1}/g;//正则  找-以后的第一个值
            var strn=str1.replace( reg1 , function(){//替换
                return arguments[1].toUpperCase();//将此值转为大写
            });
             return strn;
        }
        // console.log(tf(str1));

10.解析url

(1)function jx(str2){
            var en=str2.indexOf('?');//查找?下标 记录
            var news=str2.slice(en+1);//截取?以后的所有值
            var arr=news.split('&');//以&转数组
            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 $={
            //查找    找到返回下标   找不到返回-1
            hasClass:function(newo,clas){
                var arr=newo.className.split(/\s+/);//以空格转数组
                var con = -1;//赋初始值
                for(var i=0;i

你可能感兴趣的:(javascript)