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 相关文章推荐
javascript去掉前后空格的实例
Nov 07 Javascript
用javascript为页面添加天气显示实现思路及代码
Dec 02 Javascript
JS获取浏览器语言动态加载JS文件示例代码
Oct 31 Javascript
JS数组合并push与concat区别分析
Dec 17 Javascript
老生常谈JavaScript数组的用法
Jun 10 Javascript
jQuery页面元素动态添加后绑定事件丢失方法,非 live
Jun 16 Javascript
在DWR中实现直接获取一个JAVA类的返回值的两种方法
Dec 25 Javascript
Vue.js学习笔记之常用模板语法详解
Jul 25 Javascript
基于vue 实现token验证的实例代码
Dec 14 Javascript
JavaScript实现淘宝京东6位数字支付密码效果
Aug 18 Javascript
vue悬浮可拖拽悬浮按钮的实例代码
Aug 20 Javascript
微信小程序组件生命周期的踩坑记录
Mar 03 Javascript
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
咖啡因含量是由谁决定的?低因咖啡怎么来?低因咖啡适合什么人喝
2021/03/06 新手入门
php实现文件下载(支持中文文名)
2013/12/04 PHP
header导出Excel应用示例
2014/01/24 PHP
PHP连接和操作MySQL数据库基础教程
2014/09/29 PHP
PHP json_encode() 函数详解及中文乱码问题
2015/11/05 PHP
Zend Framework实现自定义过滤器的方法
2016/12/09 PHP
javascript开发技术大全-第1章javascript概述
2011/07/03 Javascript
js获取图片大小的函数代码
2011/09/20 Javascript
jquery实现按Enter键触发事件示例
2013/09/10 Javascript
jquery购物车实时结算特效实现思路
2013/09/23 Javascript
JS实现的网页倒计时数字时钟效果
2015/03/02 Javascript
Eclipse编辑jsp、js文件时卡死现象的解决办法汇总
2016/02/02 Javascript
Extjs4.0 ComboBox如何实现三级联动
2016/05/11 Javascript
全面了解JS中的匿名函数
2016/06/29 Javascript
用jquery快速解决IE输入框不能输入的问题
2016/10/04 Javascript
Vue CLI3 如何支持less的方法示例
2018/08/29 Javascript
VUE中使用MUI方法
2019/02/12 Javascript
jquery操作checkbox的常用方法总结【附测试源码下载】
2019/06/10 jQuery
解决Vue 刷新页面导航显示高亮位置不对问题
2019/12/25 Javascript
关于uniApp editor微信滑动问题
2021/01/15 Javascript
一篇文章快速了解Python的GIL
2018/01/12 Python
Flask核心机制之上下文源码剖析
2018/12/25 Python
Python如何实现后端自定义认证并实现多条件登陆
2020/06/22 Python
Casetify官网:自制专属手机壳、iPad护壳和Apple Watch手表带
2018/05/09 全球购物
印尼网上商店:Alfacart.com
2019/03/11 全球购物
兼职学生的自我评价
2013/11/24 职场文书
优秀通讯员事迹材料
2014/01/28 职场文书
社区学雷锋活动策划方案
2014/01/30 职场文书
毕业生自荐书
2014/02/02 职场文书
优秀医生事迹材料
2014/02/12 职场文书
科学发展观演讲稿
2014/09/11 职场文书
2014年领班工作总结
2014/11/25 职场文书
幼儿教师2014年度工作总结
2014/12/16 职场文书
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis
html form表单基础入门案例讲解
2021/07/15 HTML / CSS
Python中的 No Module named ***问题及解决
2022/07/23 Python