分享一个常用的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 相关文章推荐
jquery.tmpl JQuery模板插件
Oct 10 Javascript
浅析js封装和作用域
Jul 09 Javascript
原生JavaScript实现合并多个数组示例
Sep 21 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
Sep 09 Javascript
JS数组去掉重复数据只保留一条的实现代码
Aug 11 Javascript
JS 获取HTML标签内的子节点的方法
Sep 21 Javascript
详解webpack+vue-cli项目打包技巧
Jun 17 Javascript
vue-resource请求实现http登录拦截或者路由拦截的方法
Jul 11 Javascript
微信小程序module.exports模块化操作实例浅析
Dec 20 Javascript
JS实现碰撞检测效果
Mar 12 Javascript
微信小程序开发(二):页面跳转并传参操作示例
Jun 01 Javascript
antd vue table跨行合并单元格,并且自定义内容实例
Oct 28 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调用Oracle存储过程
2006/10/09 PHP
PHP Zip解压 文件在线解压缩的函数代码
2010/05/26 PHP
PHP编码转换
2012/11/05 PHP
PHP对MongoDB[NoSQL]数据库的操作
2013/03/01 PHP
PHP设置头信息及取得返回头信息的方法
2016/01/25 PHP
JAVASCRIPT IE 与 FF中兼容问题小结
2009/02/18 Javascript
Jquery同辈元素选中/未选中效果的实例代码
2013/08/01 Javascript
如何利用JS通过身份证号获取当事人的生日、年龄、性别
2016/01/22 Javascript
javascript实现数字倒计时特效
2016/03/30 Javascript
jquery中用函数来设置css样式
2016/12/22 Javascript
微信小程序之购物车功能
2020/09/23 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
前端开发不得不知的10个最佳ES6特性
2017/08/30 Javascript
获取layer.open弹出层的返回值方法
2018/08/20 Javascript
利用Vue构造器创建Form组件的通用解决方法
2018/12/03 Javascript
详解VS Code使用之Vue工程配置format代码格式化
2019/03/20 Javascript
基于Nuxt.js项目的服务端性能优化与错误检测(容错处理)
2019/10/23 Javascript
使用 JavaScript 创建并下载文件(模拟点击)
2019/10/25 Javascript
js实现登录拖拽窗口
2020/02/10 Javascript
解决三元运算符 报错“SyntaxError: can''t assign to conditional expression”
2020/02/12 Javascript
jQuery 实现DOM元素拖拽交换位置的实例代码
2020/07/14 jQuery
nuxt 页面路由配置,主页轮播组件开发操作
2020/11/05 Javascript
跟老齐学Python之一个免费的实验室
2014/09/14 Python
python实现调用其他python脚本的方法
2014/10/05 Python
python中的格式化输出用法总结
2016/07/28 Python
Django在win10下的安装并创建工程
2017/11/20 Python
Django框架会话技术实例分析【Cookie与Session】
2019/05/24 Python
python 解决Windows平台上路径有空格的问题
2020/11/10 Python
css3实现超炫风车特效
2014/11/12 HTML / CSS
预订全球最佳旅行体验:Viator
2018/03/30 全球购物
标记环网Toke Ring IEEE802.5
2014/05/26 面试题
党的群众路线教育实践活动心得体会范文
2014/11/05 职场文书
2015年中学元旦晚会活动方案
2014/12/09 职场文书
教师年度个人总结
2015/02/11 职场文书
2015年全民创业工作总结
2015/07/23 职场文书
公司转让协议书
2016/03/19 职场文书