分享一个常用的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 相关文章推荐
用一段js程序来实现动画功能
Mar 06 Javascript
jQuery实现的立体文字渐变效果
May 17 Javascript
jquery中对表单的基本操作代码
Jul 29 Javascript
javascript学习笔记(九) js对象 设计模式
Jun 19 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
Oct 11 Javascript
浅析XMLHttpRequest的缓存问题
Dec 13 Javascript
调整小数的格式保留小数点后两位
May 14 Javascript
JavaScript判断文件上传类型的方法
Sep 02 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
Oct 29 Javascript
JavaScript获取当前日期是星期几的方法
Apr 06 Javascript
微信小程序 swiper组件轮播图详解及实例
Nov 16 Javascript
element-ui upload组件多文件上传的示例代码
Oct 17 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加水印的代码(支持半透明透明打水印,支持png透明背景)
2013/01/17 PHP
PHP5中Cookie与 Session使用详解
2013/04/30 PHP
php递归删除目录下的文件但保留的实例分享
2014/05/10 PHP
自制PHP框架之设计模式
2017/05/07 PHP
thinkphp5框架前后端分离项目实现分页功能的方法分析
2019/10/08 PHP
jQuery AnythingSlider滑动效果插件
2010/02/07 Javascript
jQuery+css实现图片滚动效果(附源码)
2013/03/18 Javascript
artDialog双击会关闭对话框的修改过程分享
2013/08/05 Javascript
使用jquery写个更改表格行顺序的小功能
2014/04/29 Javascript
jQuery中:checkbox选择器用法实例
2015/01/03 Javascript
深入理解js generator数据类型
2016/08/16 Javascript
微信小程序 Tab页切换更新数据
2017/01/05 Javascript
NodeJS处理Express中异步错误
2017/03/26 NodeJs
jstree单选功能的实现方法
2017/06/07 Javascript
Node.JS中快速扫描端口并发现局域网内的Web服务器地址(80)
2017/09/18 Javascript
详解如何实现一个简单的Node.js脚手架
2017/12/04 Javascript
ES6学习笔记之map、set与数组、对象的对比
2018/03/01 Javascript
Vue组件实现触底判断
2019/06/26 Javascript
微信小程序如何通过用户授权获取手机号(getPhoneNumber)
2020/01/21 Javascript
分享一款超好用的JavaScript 打包压缩工具
2020/04/26 Javascript
在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程
2015/04/25 Python
Django与JS交互的示例代码
2017/08/23 Python
解决python中os.listdir()函数读取文件夹下文件的乱序和排序问题
2018/10/17 Python
python调用java的jar包方法
2018/12/15 Python
对python中大文件的导入与导出方法详解
2018/12/28 Python
使用python 将图片复制到系统剪贴中
2019/12/13 Python
css3强大的动画效果animate使用说明及浏览器兼容介绍
2013/01/09 HTML / CSS
国际知名设计师时装商店:Coggles
2016/09/05 全球购物
美体小铺奥地利官方网站:The Body Shop奥地利
2019/04/11 全球购物
企业办公室岗位职责
2014/03/12 职场文书
弘扬雷锋精神演讲稿
2014/05/10 职场文书
区长工作作风个人整改措施
2014/10/01 职场文书
教师思想作风整顿个人剖析材料
2014/10/10 职场文书
优秀党员推荐材料
2014/12/18 职场文书
工作报告范文
2019/06/20 职场文书
唤醒紫霞仙子,携手再游三界!大话手游X《大话西游》电影合作专属剧情任务
2022/04/03 其他游戏