分享一个常用的javascript静态类


Posted in Javascript onDecember 31, 2014

废话不多说,直接奉上代码,知道干啥用的小伙伴直接带走吧。

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);

        }

    };

}();

是不是相当不错呢,反正我是很满意。

Javascript 相关文章推荐
javascript,jquery闭包概念分析
Jun 19 Javascript
谈谈JavaScript中的函数与闭包
Apr 14 Javascript
JQuery页面图片切换和新闻列表滚动效果的具体实现
Sep 26 Javascript
JS修改iframe页面背景颜色的方法
Apr 01 Javascript
JavaScript文档碎片操作实例分析
Dec 12 Javascript
JS获取当前脚本文件的绝对路径
Mar 02 Javascript
RequireJS使用注意细节
May 15 Javascript
request请求获取参数的实现方法(post和get两种方式)
Sep 27 Javascript
浅谈jQuery添加的HTML,JS失效的问题
Oct 05 Javascript
微信小程序实现皮肤功能(夜间模式)
Jun 18 Javascript
微信小程序实现日历效果
Dec 28 Javascript
html5中sharedWorker实现多页面通信的示例代码
May 07 Javascript
兼容Firefox的Javascript XSLT 处理XML文件
Dec 31 #Javascript
使用jquery+CSS实现控制打印样式
Dec 31 #Javascript
浅谈javascript中字符串String与数组Array
Dec 31 #Javascript
jQuery中[attribute!=value]选择器用法实例
Dec 31 #Javascript
JavaScript中的Primitive对象封装介绍
Dec 31 #Javascript
JavaScript中的值类型转换介绍
Dec 31 #Javascript
javascript实现滑动解锁功能
Dec 31 #Javascript
You might like
php 魔术方法使用说明
2009/10/20 PHP
深入解析php中的foreach问题
2013/06/30 PHP
php+mysql+jquery实现简易的检索自动补全提示功能
2017/04/15 PHP
详解php协程知识点
2018/09/21 PHP
php图片裁剪函数
2018/10/31 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
PHP基于timestamp和nonce实现的防止重放攻击方案分析
2019/07/26 PHP
PHP 进程池与轮询调度算法实现多任务的示例代码
2019/11/26 PHP
js查找父节点的简单方法
2008/06/28 Javascript
基于JQuery的浮动DIV显示提示信息并自动隐藏
2011/02/11 Javascript
Three.js源码阅读笔记(Object3D类)
2012/12/27 Javascript
Jquery 获取指定标签的对象及属性的设置与移除
2014/05/29 Javascript
jQuery中:contains选择器用法实例
2014/12/30 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
js插件Jcrop自定义截取图片功能
2016/10/14 Javascript
AngularJS 事件发布机制
2018/08/28 Javascript
javascript canvas时钟模拟器
2020/07/13 Javascript
我所理解的JavaScript中的this指向
2020/09/04 Javascript
python格式化字符串实例总结
2014/09/28 Python
python提示No module named images的解决方法
2014/09/29 Python
python自动化报告的输出用例详解
2018/05/30 Python
python遍历文件夹找出文件夹后缀为py的文件方法
2018/10/21 Python
python读取Kafka实例
2019/12/23 Python
Python Request类源码实现方法及原理解析
2020/08/17 Python
Python实现石头剪刀布游戏
2021/01/20 Python
泰国第一的化妆品网站:Konvy
2018/02/25 全球购物
英国在线药房:Chemist.co.uk
2019/03/26 全球购物
西班牙品牌鞋子、服装和配饰在线商店:Esdemarca
2021/02/17 全球购物
瑞典多品牌连锁店:Johnells
2021/01/13 全球购物
Java中实现多态的机制是什么?
2014/12/07 面试题
《赠汪伦》教学反思
2014/04/12 职场文书
《画杨桃》教学反思
2014/04/13 职场文书
节约粮食标语
2014/06/18 职场文书
教师师德师风个人整改方案
2014/09/18 职场文书
《草虫的村落》教学反思
2016/02/20 职场文书
python开发实时可视化仪表盘的示例
2021/05/07 Python