JavaScript 应用类库代码


Posted in Javascript onJune 02, 2008

/* $ 获取指定对象
@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;
   }
  }
}
}; 

Javascript 相关文章推荐
基于jquery实现的省市区级联无ajax
Sep 24 Javascript
如何正确使用javascript 来进行我们的程序开发
Jun 23 Javascript
使用jQuery实现返回顶部
Jan 26 Javascript
js与jquery实时监听输入框值的oninput与onpropertychange方法
Feb 05 Javascript
JS实现文件动态顺序载入的方法
Mar 07 Javascript
javascript中window.open在原来的窗口中打开新的窗口(不同名)
Nov 15 Javascript
JS基于ocanvas插件实现的简单画板效果代码(附demo源码下载)
Apr 05 Javascript
深入浅出ES6之let和const命令
Aug 25 Javascript
angularjs实现下拉列表的选中事件示例
Mar 03 Javascript
基于 Bootstrap Datetimepicker 联动
Aug 03 Javascript
vue.js路由跳转详解
Aug 28 Javascript
jQuery实现图片切换效果
Oct 19 jQuery
javascript数组的扩展实现代码集合
Jun 01 #Javascript
javascript String 的扩展方法集合
Jun 01 #Javascript
用javascript做拖动布局的思路
May 31 #Javascript
用JS实现一个页面多个css样式实现
May 29 #Javascript
使用jquery给input和textarea设定ie中的focus
May 29 #Javascript
js中cookie的使用详细分析
May 28 #Javascript
javascript一点特殊用法
May 28 #Javascript
You might like
PHP高级编程实例:编写守护进程
2014/09/02 PHP
深入理解php printf() 输出格式化的字符串
2016/05/23 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
JavaScript获取onclick、onchange等事件值的代码
2013/07/22 Javascript
利用javascript打开模态对话框(示例代码)
2014/01/11 Javascript
jQuery性能优化的38个建议
2014/03/04 Javascript
使用node.js 制作网站前台后台
2014/11/13 Javascript
javascript删除一个html元素节点的方法
2014/12/20 Javascript
ajax读取数据后使用jqchart显示图表的方法
2015/06/10 Javascript
浅谈javascript中return语句
2015/07/15 Javascript
JS折半插入排序算法实例
2015/12/02 Javascript
js实现的页面加载完毕之前loading提示效果完整示例【附demo源码下载】
2016/08/02 Javascript
javascript实现数据双向绑定的三种方式小结
2017/03/09 Javascript
ES6正则的扩展实例详解
2017/04/25 Javascript
JS 实现百度搜索功能
2018/02/01 Javascript
简单两步使用node发送qq邮件的方法
2019/03/01 Javascript
layui table设置某一行的字体颜色方法
2019/09/05 Javascript
mpvue实现微信小程序快递单号查询代码
2020/04/03 Javascript
js模拟实现百度搜索
2020/06/28 Javascript
[01:11:46]DOTA2-DPC中国联赛 正赛 iG vs Magma BO3 第一场 2月23日
2021/03/11 DOTA
Python的高级Git库 Gittle
2014/09/22 Python
python定时检查某个进程是否已经关闭的方法
2015/05/20 Python
老生常谈Python基础之字符编码
2017/06/14 Python
Python使用指定字符长度切分数据示例
2019/12/05 Python
Python语法之精妙的十个知识点(装B语法)
2020/01/18 Python
Python中操作各种多媒体,视频、音频到图片的代码详解
2020/06/04 Python
Volcom法国官网:美国冲浪滑板品牌
2017/05/25 全球购物
Cotton On香港网站:澳洲时装连锁品牌
2018/11/01 全球购物
优秀中学生事迹材料
2014/01/31 职场文书
企业办公室岗位职责
2014/03/12 职场文书
工业设计专业自荐书
2014/06/05 职场文书
群众路线对照检查材料
2014/09/22 职场文书
民主生活会对照检查材料
2014/09/22 职场文书
财务助理岗位职责范本
2014/10/09 职场文书
2014年团支书工作总结
2014/11/14 职场文书
mysql数据库入门第一步之创建表
2021/05/14 MySQL