• 我写的javascript常用静态方法类,分享给大家


    util=function(){
        return {
            $:function(id){
                return document.getElementById(id);
            },
            trim:function(str){
                return str.replace(/(^s+)|(s+$)/g, "");
            },
            len:function(str){   
                return str.replace(/[^x00-xff]/g,'**').length;   
            },
            format:function(str){
                var arg = arguments;
                return str.replace(/{(d+)}/g, function(m, i){
                    return arg[parseInt(i)+1];
                });
            },
            each:function(object, callback, args){
                var name, i = 0, length = object.length;
                if ( args ) {
                    if ( length === undefined ) {
                        for ( name in object )
                            if ( callback.apply( object[ name ], args ) === false )
                                break;
                    } else
                        for ( ; i < length; )
                            if ( callback.apply( object[ i++ ], args ) === false )
                                break;
                } else {
                    if ( length === undefined ) {
                        for ( name in object )
                            if ( callback.call( object[ name ], name, object[ name ] ) === false )
                                break;
                    } else
                        for ( var value = object[0];
                            i < length && callback.call( value, i, value ) !== false; value = object[++i] ){}
                }
            },
            setCookie:function(name,value,hours,path,domain){
                var str=new String();
                var nextTime=new Date();
                nextTime.setHours(nextTime.getHours()+hours);
                str=name+"="+escape(value);
                if(hours)
                    str+=";expires="+nextTime.toGMTString();
                if(path)
                    str+=";path="+path;
                if(domain)
                    str+=";domain="+domain;
                document.cookie=str;
            },
            getCookie:function(name){
                var rs=new RegExp("(^|)"+name+"=([^;]*)(;|$)","gi").exec(document.cookie),tmp;
                if(tmp=rs)
                    return unescape(tmp[2]);
                return null;
            },
            delCookie:function(name){
                document.cookie = name + "=-1" + "; expires=Fri, 31 Dec 1999 23:59:59 GMT;";
            },
            /**
            *url String
            *parms String
            *method String default value "get"
            *asy Boolean defalut value true
            *success Function(http_request.responseText)
            **/
            ajax:function(config){
                var url=config.url,
                    parms=(config.parms?config.parms:"") + "&t="+new Date().getTime(),
                    method=config.method||"get",
                    asy=true;
                var http_request=null;

                if(method.toLowerCase()=="get"){
                    url=url+"?"+parms;
                    parms=null;
                }

                //开始初始化XMLHttpRequest对象
                if(window.XMLHttpRequest) { //Mozilla 浏览器
                    http_request = new XMLHttpRequest();
                    if (http_request.overrideMimeType) {//设置MiME类别
                        http_request.overrideMimeType("text/xml");
                    }
                } else if (window.ActiveXObject) { // IE浏览器
                    try {
                        http_request = new ActiveXObject("Msxml2.XMLHTTP");
                    } catch (e) {
                        try {                
                            http_request = new ActiveXObject("Microsoft.XMLHTTP");
                        } catch (e) {}
                    }
                }
                if(!http_request) { // 异常,创建对象实例失败
                    throw new Error("不能创建XMLHttpRequest对象实例.");
                    return null;
                }
                http_request.open(method,url,asy);

                http_request.onreadystatechange=function(){
                    if (http_request.readyState == 4){
                        try{
                            if (http_request.status == 200){
                                config.success(http_request.responseText);
                            }
                        }catch(e){
                            throw new Error("数据读取失败.");
                        }
                    }
                };
                if(method.toLowerCase()=="post"){
                    http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
                }
                http_request.send(parms);
            }
        };
    }();

  • 相关阅读:
    UI设计师需要熟记的45个快捷键Windows、Mac
    手把手教你制作好莱坞大片级场景——宇宙猫
    关于功能图标的绘制方法!
    设计师该如何把简历写好?
    PS合成的5个要点:场景、对比、氛围、模糊、纹理
    UI设计工资有多高?怎么快速拿高薪?
    19. Remove Nth Node From End of List
    18. 4Sum
    17. Letter Combinations of a Phone Number
    16. 3Sum Closest
  • 原文地址:https://www.cnblogs.com/xiaochao12345/p/4187198.html
Copyright © 2020-2023  润新知