JavaScript 应用类库代码

/* $ 获取指定对象
@element 对象名
可以使用对象名集合,返回值为对象的集合
如果您使用了 Prototype 类库, 请把该函数注释掉
Sams_object.Get() 中同样实现该函数的所有功能
*/
function $(element) {
  if (arguments.length > 1) {
    for (var i = 0, elements = [], length = arguments.length; i < length; i++)
      elements.push($(arguments[i]));
    return elements;
  }
  if (typeof element == 'string')
    element = document.getElementById(element);
  return element;
}

/// 浏览器相关操作
var Sams_browse = {
/* 检测浏览信息 */
checkBrowser : function ()

    this.ver=navigator.appVersion 
    this.dom=document.getElementById?1:0 
    this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0; 
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; 
    this.ie4=(document.all && !this.dom)?1:0; 
    this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
    this.ns4=(document.layers && !this.dom)?1:0; 
    this.mac=(this.ver.indexOf('Mac') > -1) ?1:0; 
    this.ope=(navigator.userAgent.indexOf('Opera')>-1); 
    this.ie=(this.ie6 || this.ie5 || this.ie4) 
    this.ns=(this.ns4 || this.ns5) 
    this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope) 
    this.nbw=(!this.bw) 
    return this;
},

/* 设为首页
  @url  要设为首页的地址
*/
SetDefault : function ()
{
  this.style.behavior='url(#default#homepage)';
  this.setHomePage(this.GetUrl());
  return false;
},

/* 复制指定URL地址
  @Msg  要写入剪贴板的字符集
*/
SetCopy : function (Msg){
  if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
   clipboardData.setData('Text',Msg);
   alert ("网址“"+Msg+"”\n已经复制到您的剪贴板中\n您可以使用Ctrl+V快捷键粘贴到需要的地方");
  }
  else 
  {
   prompt("请复制网站地址:",Msg); 
  }
},

/* 加入收藏
  @site  站点名称
  @url  地址
*/
AddBookmark : function (site, url){
  if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
   window.external.addFavorite(url,site)
  } else if (navigator.userAgent.toLowerCase().indexOf('opera') > -1) {
   alert ("请使用Ctrl+T将本页加入收藏夹");
  } else {
   alert ("请使用Ctrl+D将本页加入收藏夹");
  }
},

/* 打开Url指定宽度和高度的窗口 */
OpenWindows : function (url,width,height)
{
  window.open(url,'newwin','width='+width+',height='+height);
  return false;
},

/* 禁止浏览器的Javascript错误提示 */
CloseError : function(){
  window.onerror = function(){return true;};
},

/* 获取浏览器URL */
GetUrl : function(){
  return location.href;
},

/* 获取URL参数 */
GetUrlParam : function(){
  return location.search;
},

/* 获取页面来源 */
GetFrom : function(){
  return document.referrer;
},

/* 获取指定的URL参数值
  @name  参数名
*/
Request : function(name){
  var GetUrl = this.GetUrl();
  var Plist = new Array();
  if(GetUrl.indexOf('?') > 0)
  {
   Plist = GetUrl.split('?')[1].split('&');
  }
  else if(GetUrl.indexOf('#') > 0)
  {
   Plist = GetUrl.split('#')[1].split('&');
  }
  if (GetUrl.length > 0)
  {
   for(var i=0; i<Plist.length; i++)
   {
    var GetValue = Plist[i].split('=');
    if (GetValue[0].toUpperCase() == name.toUpperCase())
    {
     return GetValue[1];
     break;
    }
   }
   return;
  }
},

/* 直接将HTML写到新窗口
  @title  标题
  @msg  内容
*/
Popmsg : function PopIt(title,msg)
{
  var popup = window.open('','popDialog','height=500,width=400,scrollbars=yes');
  popup.document.write('<html><title>'+title+'</title><style>body{margin:10px;font:13px Arial;}span{text-line:20px;}</style><body><span style=\'font:14px arial;\'>'+msg + '</span></body></html>');
  popup.document.close();
}
};

/// 对象操作
var Sams_object = {

/* 创建一个DIV对象
  @ID   要创建的对象ID
  @ClassName 创建对象的Class
  @SetValue 设置该对象值
  @ToDiv  将对象追加到指定的对象,如指定的对象不存在,则追加在Body的后面
  返回  创建后的对象
*/
CreateDiv : function (ID,ClassName,SetValue,ToDiv){
  var creatediv = document.createElement('div');
  if(ID != null) creatediv.id = ID;
  creatediv.style.position = 'absolute';
  if(ClassName != null) creatediv.className = ClassName;
  if(this.Get(ToDiv))
  {
   this.Get(ToDiv).appendChild(creatediv);
  }
  else
  {
   document.getElementsByTagName('body')[0].appendChild(creatediv);
  }
  this.SetValue(ID,SetValue);
  return this.Get(ID);
},

/* 删除指定DIV对象
  @objid  要删除的对象ID
  返回  Bool 操作结果
*/
DeleteDiv : function (objid)
{
  try
  {
   if(this.Get(objid))
   {
    var GetParent = this.Get(objid).parentNode;
    GetParent.removeChild(this.Get(objid));
    return true;
   }
   else
   {
    return false;
   }
  }
  catch(e)
  {
   return false;
  }
},

/* 获取浏览器对象
  @id  要获取的对象ID
  可以使用对象名集合,返回值为对象的集合
*/
Get : function (objid) {
  if (arguments.length > 1) {
   for (var i = 0, objids = [], length = arguments.length; i < length; i++)
     objids.push(this.Get(arguments[i]));
   return objids;
  }
  if (typeof objid == 'string')
  {
   if (document.getElementById) {
    objid = document.getElementById(objid);
   } else if (document.all) {
    objid = document.all[objid];
   } else if (document.layers) {
    objid = document.layers[objid];
   }
  }
  return objid;
},

/* 获取对象的值
  @objid  对象ID
*/
GetValue : function (objid) {
  if (typeof objid == 'string')
  {
   var getTagName = this.Get(objid).tagName.toLowerCase();
   if (getTagName == 'input' || getTagName == 'textarea' || getTagName == 'select')
   {
    return this.Get(objid).value;
   }
   else if (getTagName == 'div' || getTagName == 'span')
   {
    return this.Get(objid).innerText;
   }
  }
  else if (typeof objid == 'object')
  {
   return objid.value;
  }
},

/* 设置指定对象的值,实现可以直接赋值或清除操作
  @objid  对象ID
  @inserValue 传入值(可选项 Null:清除该ID的值, 则直接赋值)
*/
SetValue: function(objid,inserValue) {
  var getTagName = this.Get(objid).tagName.toLowerCase();
  if (inserValue == null) inserValue = '';
  if (getTagName == 'input' || getTagName == 'textarea')
  {
   this.Get(objid).value = inserValue;
  }
  else if (getTagName == 'div' || getTagName == 'sapn')
  {

this.Get(objid).innerText = inserValue;
  }
},

/* 拷贝对象值到剪贴板  
  @str  对象值
*/
CopyCode : function (str) {
  var rng = document.body.createTextRange();
  rng.moveToElementText(str);
  rng.scrollIntoView();
  rng.select();
  rng.execCommand("Copy");
  rng.collapse(false);
},

/* 显示隐藏一个对象 
  @Objid  对象ID
  @isshow  具体操作,指定Obj为False : none或者True : block (可选)
*/
ShowHidd : function(objid,isshow){
  if (isshow != null)
  {
   if(isshow)
   {
    this.Get(objid).style.display = 'block';
   }
   else
   {
    this.Get(objid).style.display = 'none';
   }
  }
  else
  {
   if(this.Get(objid).style.display == 'none')
   {
    this.Get(objid).style.display = 'block';
   }
   else
   {
    this.Get(objid).style.display = 'none';
   }
  }
},

/* 当前对象是否可见
  @objid  对象ID
*/
IsVisible : function(objid){
  if(this.Get(objid))
  {
   try
   {
    if (this.Get(objid).style.display == 'none')
    {
     return false
    }
    if(this.Get(objid).style.visibility == 'hidden')
    {
     return false;
    }
    return true;
   }
   catch(e)
   {
    return false;
   }
  }
  else
  {
   return false;
  }
}
};

/// 字符处理
var Sams_string = {
/* 取左边的指定长度的值  
  @str  要处理的字符集
  @n   长度
*/
Left : function (str,n)
{
  if(str.length > 0)
  {
   if(n>str.length) n = str.length;
   return str.substr(0,n)
  }
  else
  {
   return;
  }
},

/* 取右边的指定长度的值   
  @str  要处理的字符集
  @n   长度
*/
Right : function (str,n)
{
  if(str.length > 0)
  {
   if(n>=str.length) return str;
   return str.substr(str.length-n,n);
  }
  else
  {
   return;
  }
},

/* Trim:清除两边空格 
  @str  要处理的字符集
*/
Trim : function (str) 
{
  if (typeof str == 'string') return str.replace(/(^\s*)|(\s*$)/g, '');
},

/* LTrim:清除左边的空格 
  @str  要处理的字符集
*/
Ltrim : function (str) 

  if (typeof str == 'string') return str.replace(/(^\s*)/g, '');
},

/* RTrim: 清除右边的空格 
  @str  要处理的字符集
*/
Rtrim : function (str) 

  if (typeof str == 'string') return str.replace(/(\s*$)/g, '');
},

/* 清除前后的非字符
  @str  要处理的字符集
*/
strip : function(str) {
  if (typeof str == 'string') return str.replace(/^\s+/, '').replace(/(^\s*)|(\s*$)/g, '');
},

/* 过滤字符里面的HTML标签
  @str  要处理的字符集
*/
stripTags : function(str) {
  if (typeof str == 'string')return str.replace(/<\/?[^>]+>/gi, '').replace(/(^\s*)|(\s*$)/g, '');
}
};

/// 时间相关操作
var Sams_time = {
/* 获取当天日期 yyyy-MM-dd */
GetDateNow : function (){
  var d,y,m,dd;
  d = new Date(); 
  y = d.getYear();
  m = d.getMonth() + 1;
  dd = d.getDate();            
  return y+"-"+m+"-"+dd;
},

/* 获取指定日期后的特定天数的日期值
  @toDate  当前指定的日期
  @N   要添加的日期数
*/ 
AddDays : function(toDate,N){
  var aDate=this._cvtISOToDate(toDate);
  if (!aDate) return "";
  var millis=86400000 * N;
  aDate=new Date(aDate.getTime()+millis);
  return this._fmtDateISO(aDate);
},
_fmtDateISO : function (aDate) {
  with (aDate) {
   var mm=getMonth()+1;
   if (mm<10) {mm='0'+mm;}
   var dd=getDate();
   if (dd<10) {dd='0'+dd;}
   return (getFullYear() + '-' + mm + '-' + dd);
  }
},
_cvtISOToDate : function (isoDate) {
  var atomDate= isoDate.split('-');
  var aDate=new Date(parseInt(atomDate[0],10),parseInt(atomDate[1],10)-1,parseInt(atomDate[2],10),6,0,0);
  return aDate;
}
};

/// 图像相关操作
var Sams_media = {
/* 为单一图像添加鼠标中键放大缩小功能, 批量可以直接用 ResizeImage(指定添加该功能的图片大小:Int) 即可 (该功能只适用于IE)
  objid  对象ID 
*/
ZoomFun : function(objid){
  Sams_object.Get(objid).onmousewheel = function(){return Sams_media.imagecontrol(this);}
},

/* 重置图片尺寸同时添加放大功能 (该功能只适用于IE) 
  @IntSize 指定图像的大小
  如果适合图像大小就添加放大缩小功能
*/ 
ResizeImage: function (IntSize) {
  var imgsinlog=document.getElementsByTagName('img');
  for(j=0; j<imgsinlog.length; j++) {
   if (imgsinlog[j].width >= IntSize) {
    imgsinlog[j].width = IntSize;
    imgsinlog[j].style.cursor= 'pointer';
    imgsinlog[j].onclick = function() {window.open(this.src);}
    if (navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
     imgsinlog[j].title = '您可以用鼠标中键或者使用Ctrl+鼠标滚轮缩放图片,点击图片可在新窗口打开';
     imgsinlog[j].onmousewheel = function(){return Sams_media.imagecontrol(this);};
    }
    else
    {
     imgsinlog[j].title = '点击图片可在新窗口打开';
    }
   }
  }
},
imagecontrol : function(obj){
  var zoom=parseInt(obj.style.zoom, 10)||100;zoom+=event.wheelDelta/12;
  if (zoom>0) obj.style.zoom=zoom+'%';
  return false;
},

/* 如果图像出现下载不了等异常,显示的错误提示图片
  @errimgpath 显示错误提示的图像路径
*/ 
ImagesError : function(errimgpath){
  var imglist = document.getElementsByTagName('img');
  for(j=0; j<imglist.length; j++) {
   imglist[j].onerror = function(){
    this.src = errimgpath;
   }
  }
},

/* 显示媒体
  @mFile  文件路径
  @mFileType 文件类型(可为空,如为Flash,要指定为swf类型)
  @ObjID  对象ID
  @mWidth  显示的对象宽度
  @mHeight 显示对象的高度
  注: 可以指定对象的ID, 如果ID不存在,会自动创建,追加在Body后面
*/
ShowMedia : function (mFile, mFileType, ObjID, mWidth, mHeight) {
  var mediaStr;
  switch(mFileType){
   case "swf":
    mediaStr="<object codeBase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' width='"+mWidth+"' height='"+mHeight+"'><param name='movie' value='"+mFile+"'><param name='quality' value='high'><param name='AllowScriptAccess' value='never'><embed src='"+mFile+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+mWidth+"' height='"+mHeight+"'></embed></OBJECT>";
    break;
   default :
    mediaStr="<object width='"+mWidth+"' height='"+mHeight+"' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'><param name='url' value='"+mFile+"' /><embed width='"+mWidth+"' height='"+mHeight+"' type='application/x-mplayer2' src='"+mFile+"'></embed></object>";
  }

var mediaDiv = Sams_object.Get(ObjID);

if (mediaDiv) {
   mediaDiv.innerHTML = mediaStr;
  } 
  else
  {
   mediaDiv = document.createElement("div");
   mediaDiv.id = ObjID;
   mediaDiv.innerHTML = mediaStr;
   document.getElementsByTagName('body')[0].appendChild(mediaDiv);
  }
  return false;
}
};

/// 样式相关操作
var Sams_style = {
/* 改变字体大小
  @objid  对象ID
  @size  字号
*/
doZoom : function (objid,size){
  Sams_object.Get(objid).style.fontSize=size+'px';
},

/* 改变指定对象样式
  @objid  对象ID
  @className 要更改的ClassName
*/
ClassName: function(objid, className) {
  Sams_object.Get(objid).className = className;
},

/* 对象定位
  @obj  要定位的对象
  返回  X.Y 结果的数组对象
*/
GotoXY : function (obj) {
  var t=obj.offsetTop; 
  var l=obj.offsetLeft; 
  while(obj=obj.offsetParent){ 
   t+=obj.offsetTop; 
   l+=obj.offsetLeft; 
  }
  return Array(t,l);
}
};

/// 科学计算
var Sams_account = {
/* 逢1进10计算
  @ 数值
*/
GetTen: function (i)
{
  var items_One,Get_One;
  if (i.length > 1&& (/^\d+$/.test(i)))
  {
     items_One = i.substr(0,i.length-1);
     Get_One = i.substr(i.length-1,1);
     if (parseInt(Get_One)>0)
     {
   items_One = parseInt(items_One)+1;
   items_One = items_One + '0';
     }
     else
   {
   items_One = items_One + '0'; 
   }
  }
  else
  {
   items_One = i;
  }
  return items_One;
}
};

/// 数据验证(所有数值返回值均为Bool型)
var Sams_validate = {
/* 是否是数字型数据
  @str  字符集
*/
IsNumber : function(str){
  if (/^\d+$/.test(str)){return true;}else{return false;}
},

/* 是否是数字型数据
  @objid  对象ID
*/
IsNumberObj : function(objid){
  return this.IsNumber(Sams_object.GetValue(objid));
},

/* 是否是自然数型数据
  @str  字符集
*/
IsInt : function(str){
  if (/^(\+|-)?\d+$/.test(str)){return true;}else{return false;}
},

/* 是否是自然数型数据
  @objid  对象ID
*/
IsIntObj : function(objid){
  return this.IsInt(Sams_object.GetValue(objid));
},

/* 是否是中文字符
  @str  字符集
*/
IsChinese : function(str)
{
  if (/^[\u4e00-\u9fa5]+$/.test(str)){return true;}else{return false;}
},

/* 是否是中文字符
  @objid  对象ID
*/
IsChineseObj : function(objid)
{
  return this.IsChinese(Sams_object.GetValue(objid));
},

/* 是否为英文字母
  @str  字符集
*/
IsLower : function(str)
{
   if (/^[A-Za-z]+$/.test(str)){return true}else{return false;}
},

/* 是否为英文字母
  @objid  对象ID
*/
IsLowerObj : function(objid)
{
   return this.IsLower(Sams_object.GetValue(objid));
},

/* 是否为正确的网址
  @str  字符集
*/
IsUrl : function(str)
{
  var myReg = /^((http:[/][/])?\w+([.]\w+|[/]\w*)*)?$/;    
  if(myReg.test(str)){return true;}else{return false;}
},

/* 是否为正确的网址
  @objid  对象ID
*/
IsUrlObj : function(objid)
{
  return this.IsUrl(Sams_object.GetValue(objid));
},

/* 是否为正确的Email形式
  @str  字符集
*/
IsEmail : function(str)
{
  var myReg = /^([-_A-Za-z0-9\.]+)@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;    
  if(myReg.test(str)){return true;}else{return false;}
},

/* 是否为正确的Email形式
  @objid  对象ID
*/
IsEmailObj : function(objid)
{
  return this.IsEmail(Sams_object.GetValue(objid));
},

/* 是否为正确的手机号码
  @str  字符集
*/
IsMobile : function(str)
{
  var regu =/(^[1][3][0-9]{9}$)|(^0[1][3][0-9]{9}$)/;   
  var re = new RegExp(regu);   
  if (re.test(str)){return true;}else{return false;}
},

/* 是否为正确的手机号码
  @objid  对象ID
*/
IsMobileObj : function(objid)
{
  return this.IsMobile(Sams_object.GetValue(objid));
}
};

/*
实现Ajax功能
Sams_ajax.SendRequest('GET', url, null, recall, "addtohome");
Sams_ajax.SendRequest('GET', url, null, null);
obj.responseText;
*/
var Sams_ajax = {
    _objPool: [],
    _getInstance: function (){
        for (var i = 0; i < this._objPool.length; i ++){
            if (this._objPool[i].readyState == 0 || this._objPool[i].readyState == 4){
                return this._objPool[i];
            }
        }
        this._objPool[this._objPool.length] = this._createObj();
        return this._objPool[this._objPool.length - 1];
    },
  _createObj : function (){
        if (window.XMLHttpRequest){
            var objXMLHttp = new XMLHttpRequest();
        }
        else{
            var MSXML = ['MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'];
            for(var n = 0; n < MSXML.length; n ++){
                try{
                    var objXMLHttp = new ActiveXObject(MSXML[n]);
                    break;
                }
                catch(e){
                }
            }
         }          
        if (objXMLHttp.readyState == null){
            objXMLHttp.readyState = 0;
            objXMLHttp.addEventListener("load", function (){
                    objXMLHttp.readyState = 4;
                    if (typeof objXMLHttp.onreadystatechange == "function"){
                        objXMLHttp.onreadystatechange();
                    }
                },  false);
        }
        return objXMLHttp;
    },

/// 开始发送请求
    SendRequest : function (method, url, data, callback,funparam,funparam2){
        var objXMLHttp = this._getInstance();
        with(objXMLHttp){
            try{
                if (url.indexOf("?") > 0){
                    url += "&randnum=" + Math.random();
                }
                else{
                    url += "?randnum=" + Math.random();
                }
                open(method, url, true);   
    setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
                send(data);
                onreadystatechange = function (){
                    if (objXMLHttp.readyState == 4 && (objXMLHttp.status == 200 || objXMLHttp.status == 304))
                    {
                        callback(objXMLHttp,funparam,funparam2);
                    }else{
      callback(null,funparam,funparam2);
     }
                }
            }
            catch(e){
                alert(e);
            }
        }
    }
};

/// Cookies操作
var Sams_cookies = {
/* cookies设置函数
  @name  Cookies名称
  @value  值
*/
setCookie : function (name, value)
{
  try
  {
   var argv = setCookie.arguments;
   var argc = setCookie.arguments.length;
   var expires = (argc > 2) ? argv[2] : null;
   if(expires!=null)
   {
    var LargeExpDate = new Date ();
    LargeExpDate.setTime(LargeExpDate.getTime() + (expires*1000*3600*24));
   }
   document.cookie = name + "=" + escape (value)+((expires == null) ? "" : ("; expires=" +LargeExpDate.toGMTString()));
   return true;
  }
  catch(e)
  {
   return false;
  }
},

/* cookies读取函数
  @Name  Cookies名称
  返回值  Cookies值
*/
getCookie : function (Name)
{
  var search = Name + "="
  if(document.cookie.length > 0) 
  {
   offset = document.cookie.indexOf(search)
   if(offset != -1) 
   {
    offset += search.length
    end = document.cookie.indexOf(";", offset)
    if(end == -1) end = document.cookie.length
    return unescape(document.cookie.substring(offset, end))
   }
   else
   {
    return;
   }
  }
}
};

(0)

相关推荐

  • 用javascript实现兼容IE7的类库 IE7_0_9.zip提供下载

    IE7 loads and parses all style sheets into a form that Explorer can understand. You can then use most CSS2/CSS3 selectors without having to resort to CSS hacks. The lightweight script is a single-line inclusion in your HTML/XML document. No alteratio

  • 一实用的实现table排序的Javascript类库

    一个Javascript 的类库,用于table内容排序.使用很方便,不用每次都去调用数据库了. 特别适合多表查询的排序.加上<tbody>的style.display 切换,也可以实现分页. 效果演示 用法: 1.添加JS <SCRIPT src="sorttable.js" type="text/javascript"></SCRIPT> 2.添加TABLE,注意的是:一定要有ID,class为"sortable&q

  • javascript面向对象包装类Class封装类库剖析

    javascript是个入门门槛很低的语言,甚至一个从来没有接触过javascript的技术人员,几小时内就可以写出一个简单有用的程序代码. 但是如果因此你就下结论:javascript是门简单的语言.那你就大错特错了.想写出高性能的代码,同样需要具备一个高级程序员的基本素养. 一个java或者c++程序员,不一定能写出高性能的javascript代码,但更容易写出高性能的javascript代码. javascript的简单是基于它"胸襟广阔"的包容性.它声明时,不需要指定类型,甚至

  • 5个最佳的Javascript日期处理类库分享

    在大家日常网站开发和web应用开发中,我们往往需要有效的调用Javascript处理日期和时间格式相关的函数,在Javascript中已经包含了部分最基本的内建处理方法.当然如果大家有时间的话,完全可以自己开发和编写需要的方法,但是有效的使用别人已经开发好的类库肯定是一个更好的处理方式,没有必要什么都原创吧,君子善假于物也.今天这里我们收集了5个最佳的日期处理函数类库,希望对于大家有帮助,如果你喜欢我们的文章,请大家给我们留言,谢谢! 1. XDate 这个类库是javascript本地日期对象

  • JavaScript类库D

    因为是辅助类库,所以为了兼容所有其他框架和类库,采用了包装器的方式对对象进行扩展.D类库的最主要的内容是针对js常用内置对象的扩展,比如:String,Number,Array,Date等,这些扩展偏于具体的业务逻辑,比如对String扩展的trim方法.对Date扩展的toStr方法等,都是对一些常用但对象本身不支持且框架类库也不支持或不完整支持的功能扩展.同时通过对应包装器的包装我们可以通过链式方法来操作对象,最后每个包装器都提供了拆箱(即还原为原生对象)方法.故包装器提供的实质是一个装箱.

  • AppBaseJs 类库 网上常用的javascript函数及其他js类库写的

    复制代码 代码如下: /*----------------------------------- Web Application JavaScript Library 2009.11 janchie ------------------------------------*/ //String原生对象扩展 置空左右端空格 String.prototype.trim = function(){ return this.replace(/(^[\s\n\t\r]*)|([\s\n\r\t]*$)/g

  • stream.js 一个很小、完全独立的Javascript类库

    <script src='stream-min.js'></script> 下载 stream.js 2Kb minified streams是什么? Streams 是一个操作简单的数据结构,很像数组或链接表,但附加了一些非凡的能力. 它们有什么特别之处? 跟数组不一样,streams是一个有魔法的数据结构.它可以装载无穷多的元素.是的,你没听错.他的这种魔力来自于具有延后(lazily)执行的能力.这简单的术语完全能表明它们可以加载无穷多的元素. 入门 如果你愿意花10分钟的时

  • Javascript类库的顶层对象名用户体验分析

    由于顶级对象是使用类库几乎所有功能的入口,在编码中会频繁地输入这几个字符,因此在设计类库时,顶级对象名输入的简便性也是相当重要的. 在此将从对象名称的长度.输入对象名称的按键顺序这两个方面对三个类库进行重点比较,同时力求照顾到一些特别的点,从而得出一个较为全面的评测结果. 名称长度 jQuery共有6个字符组成,从长度上而言是三个类库中最长的一个,同时包含了一个大写字母Q,在输入过程中需要加入一次SHIFT键,因此长度值给定为7. Ext共有3个字符组成,在长度上是最有优势的,由于首字母为大写字

  • Moment.js 不容错过的超棒Javascript日期处理类库

    使用这个类库,可以帮助你有效的处理相关日期.希望大家喜欢! 主要特性: 3.2kb超轻量级 独立类库,意味这你不需要倒入一堆js 日期处理支持UNIX 时间戳,String,指定格式的Date 日期处理:加,减日期 日期显示:包括相对时间显示的日期显示选项 其它内建的功能,例如,保存,timezone offset和i18n支持 可以作为node.js的一个模块 完整的文档介绍 如何使用? 复制代码 代码如下: var now = moment(); console.log(now.format

  • javascript拖拽上传类库DropzoneJS使用方法

    用法 1. add js and css style 复制代码 代码如下: <link href="~/Dropzone/css/basic.css" rel="stylesheet" /> <link href="~/Dropzone/css/dropzone.css" rel="stylesheet" /> <script src="~/Dropzone/dropzone.min.j

  • JavaScript页面模板库handlebars的简单用法

    Handlebars 是一个 JavaScript 页面模板库,帮助你轻松的构建语义化模板. 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>handlebars</title> <meta http-equiv="keywords" content=&quo

随机推荐