分享一个常用的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 lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
Oct 17 Javascript
jQuery不兼容input的change事件问题解决过程
Dec 05 Javascript
jQuery中width()方法用法实例
Dec 24 Javascript
使用纯javascript实现放大镜效果
Mar 18 Javascript
javascript+html5实现仿flash滚动播放图片的方法
Apr 27 Javascript
jQuery+CSS实现的网页二级下滑菜单效果
Aug 25 Javascript
jQuery实现div拖拽效果实例分析
Feb 20 Javascript
jQuery Ajax 异步加载显示等待效果代码分享
Aug 01 Javascript
基于jQuery实现中英文切换导航条效果
Sep 18 Javascript
微信小程序删除处理详解
Aug 16 Javascript
微信小程序下拉刷新界面的实现
Sep 28 Javascript
实例讲解JavaScript截取字符串
Nov 30 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
ThinkPHP中U方法的使用浅析
2014/06/13 PHP
Yii2搭建后台并实现rbac权限控制完整实例教程
2016/04/28 PHP
PHP中Array相关函数简介
2016/07/03 PHP
Yii列表定义与使用分页方法小结(3种方法)
2016/07/15 PHP
Laravel如何使用数据库事务及捕获事务失败后的异常详解
2017/10/23 PHP
php实现的支付宝网页支付功能示例【基于TP5框架】
2019/09/16 PHP
WordPress免插件实现面包屑导航的示例代码
2020/08/20 PHP
广告切换效果(缓动切换)
2009/05/27 Javascript
css transform 3D幻灯片特效实现步骤解读
2013/03/27 Javascript
jQuery学习笔记(2)--用jquery实现各种模态提示框代码及项目构架
2013/04/08 Javascript
tuzhu_req.js 实现仿百度图片首页效果
2015/08/11 Javascript
jQuery实现的兼容性浮动层示例
2016/08/02 Javascript
Vue.js弹出模态框组件开发的示例代码
2017/07/26 Javascript
微信小程序实现倒计时调用相机自动拍照功能
2018/06/10 Javascript
angularjs下ng-repeat点击元素改变样式的实现方法
2018/09/12 Javascript
vue基础之v-bind属性、class和style用法分析
2019/03/11 Javascript
[02:32]DOTA2英雄基础教程 祸乱之源
2013/12/23 DOTA
[01:02:04]EG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
基于wxpython实现的windows GUI程序实例
2015/05/30 Python
在DigitalOcean的服务器上部署flaskblog应用
2015/12/19 Python
python脚本监控docker容器
2016/04/27 Python
Python复数属性和方法运算操作示例
2017/07/21 Python
Python pandas DataFrame操作的实现代码
2019/06/21 Python
django框架model orM使用字典作为参数,保存数据的方法分析
2019/06/24 Python
解决Jupyter因卸载重装导致的问题修复
2020/04/10 Python
Keras 切换后端方式(Theano和TensorFlow)
2020/06/19 Python
Python基于mediainfo批量重命名图片文件
2020/12/29 Python
在PyCharm中安装PaddlePaddle的方法
2021/02/05 Python
matplotlib之pyplot模块坐标轴标签设置使用(xlabel()、ylabel())
2021/02/22 Python
移动端Web页面的CSS3 flex布局快速上手指南
2016/05/31 HTML / CSS
廉价航班、机票和酒店:JustFly
2018/02/07 全球购物
澳大利亚排名第一的狂热牛仔品牌:ONETEASPOON
2018/11/20 全球购物
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
婚礼证婚人证婚词
2014/01/08 职场文书
2014年物业管理工作总结
2014/11/21 职场文书
个人先进事迹材料范文
2014/12/29 职场文书