欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

工作中常用javascript代码整理

程序员文章站 2022-07-14 10:44:16
...
工作中会常用到的一些javascript功能模块,贴出来让大家参考下,大虾们有更好的idea欢迎指正完善.
document太长了 简化为D
var D = document;

浏览器类型判断

var broswer = {
isIE:navigator.userAgent.toLowerCase().match(/msie ([\d.]+)/)?true:false,
ie6:navigator.userAgent.toLowerCase().match(/msie 6/)?true:false,
ie7:navigator.userAgent.toLowerCase().match(/msie 7/)?true:false,
ie8:navigator.userAgent.toLowerCase().match(/msie 8/)?true:false,
isMozilla:navigator.userAgent.toLowerCase().match(/firefox\/([\d.]+)/)?true:false,
isOpera:(navigator.userAgent.toLowerCase().indexOf('opera')!=-1)
}

StringBuffer工具,在处理大量字符串时使用

function StringBuffer(){
this.sBuf = new Array();
}
StringBuffer.prototype.append = function(str){
this.sBuf.push(str);
}
StringBuffer.prototype.toString = function(){
return this.sBuf.join("");
}


util工具包

/**
*util工具包
1: util.cElement(t,o) 创建页面元素 t是标签 o是属性集
2: util.each(r,fn,b,e) 循环执行数组或者集合的fn功能 r:数组 fn:function b:循环开始位置 e:循环结束位置
3: util.stopPropagation() 取消事件冒泡
4: util.$() $符获取元素
*/
var util = {
cElement:function(t,o){
if(broswer.isIE&&(t.toLowerCase()=='input')&&(!!o)&&(!!o.type)&&(o.type.toLowerCase()=="radio")){
var s = "";
for(var p in o){s+= (p=="cssText")?("style='"+o[p]+"'"):(p+"='"+o[p]+"'");}
return D.createElement("<input type='radio' "+s+" />");/**在ie中创建type为radio的input元素的时候会无法选中 故采用此种方法*/
}else{
var tag = D.createElement(t);
for(var p in o){
(p=="cssText")?tag.style.cssText = o[p]:tag[p] = o[p];
};return tag;
}
},
each:function(r,fn,b,e){
var i = b||0; var l = e&&e<r.length?e:r.length;
for(var i=b||0;i<l;i++){
var rlt = fn(r[i],i);
if(rlt!=undefined){
return rlt;
}
}
},
stopPropagation:function(){
var e = window.event?window.event:_stopPropagation.caller.arguments[0];
if(broswer.isIE){ //ie
window.event.cancelBubble = true;
}else if(e &&e.stopPropagation){// fire opera
e.stopPropagation();
}
},
$:function(){
var r = arguments;
if(r.length==0) return ;
if(r.length==1){
return D.getElementById(r[0]);
}else{
var o = {};
for(var i=0;i<r.length;i++){
var e = D.getElementById(r[i]);
if(e) o[""+r[i]+""] = e;
}
return o;
}
}
}

未完待整理...