来公司后所在项目组开发的是一个客户端的软件,软件界面采用WEB界面来体现,因此要用到不少Javascript.来公司后所在项目组开发的是一个客户端的软件,软件界面采用WEB界面来体现,因此要用到不少Javascript.把自己写的一些通用JS函数整理了下:) /*判断浏览器版本*/ var w3c=(document.getElementById)? true: false; var agt=navigator.userAgent.toLowerCase(); var ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1) && (agt.indexOf("omniweb") == -1)); var ie5=(w3c && ie)? true : false; var ns6=(w3c && (navigator.appName=="Netscape"))? true: false; var op8=(navigator.userAgent.toLowerCase().indexOf("opera")==-1)? false:true; function Ob(o){//取得一个对象 return document.getElementById(o)?document.getElementById(o):o; } function IsSubStr(p,s){//判断是否为子字符串 return (p.indexOf(s)>-1); } function Hd(o){//隐藏某个对象 Ob(o).style.display="none"; } function Sw(o){//显示某个对象 Ob(o).style.display="block"; } function Sw2(o){//显示某个对象 Ob(o).style.display=""; } function Sf(o,s,b){ //该函数用于多按钮共用同一表单,其中:o为表单的ID b为隐藏的input的ID(其value供后如判断用户提交动作类型) s为用户提交动作类型 Ob(b).value=s; Ob(o).submit(); } function ExChgCls(o,a,b){//切换对象的className o.className=o.className==a?b:a; } function ExChgHtml(o,a,b){//切换对象的innerHTML o.innerHTML=o.innerHTML==a?b:a; } function Oh(o,s){ //输出字符串给某个对象 Ob(o).innerHTML=s; } function SetSrc(o,s){//改变img、iframe等对象的src值 Ob(o).src=s; } /*XmlHttp*/ function Gp(url,o){ //GetHttpPage var o=Ob(o); var PageRequest = false; IsLoading(o); if (window.XMLHttpRequest) {// if Mozilla, Safari etc PageRequest = new XMLHttpRequest(); } else if (window.ActiveXObject){ // if IE try { PageRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e){ try{ PageRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e){;} } } else {return false ;} PageRequest.onreadystatechange=function(){ if (PageRequest.readyState == 4) { Lp(PageRequest,o); } } PageRequest.open('GET', url, true); PageRequest.send(null); } function Lp(PageRequest,o){ //LoadPage if (PageRequest.readyState == 4 && (PageRequest.status==200 || window.location.href.indexOf("http")==-1)) Ob(o).innerHTML=PageRequest.responseText; //Hd("OpMsg"); } function IsLoading(o){ o.innerHTML="数据加载中,请稍候......"; //Sw2("OpMsg"); } //Include Javascript File function IncJs(sSrc,sID){ var oHead = document.getElementsByTagName('head')[0]; var oScript = document.createElement('script'); oScript.type = "text/javascript"; oScript.src = sSrc; oScript.id = sID; if(oScript.readyState=="loaded") {oHead.appendChild(oScript); } } /*Move & Remove*/ function Mv(a,b,n) { var i = 0; var f=Ob(a); var t=Ob(b); var n=n?n:0; if (n==0) { for(var ii=0; ii<f.options.length; ii++) { if(f.options[ii].selected ) { var no = new Option(); no.value = f.options[ii].value; no.text = f.options[ii].text; t.options[t.options.length] = no; } } } else { for(var ii=0; ii<f.options.length; ii++) { if(f.options[ii].selected ) { t.value += ","+f.options[ii].value; } } } Rv(a); } function Rv(o) { var o=Ob(o); for(var ii=o.options.length-1; ii>=0; ii--) { if(o.options[ii].selected && o.options[ii] != "") { o.options[ii].value = ""; o.options[ii].text = ""; o.options[ii] = null; } } } function ChgInp(o1,o2){ Ob(o2).readOnly=(!Ob(o1).checked); if (Ob(o1).checked) { Ob(o2).className="InpTxt"; Ob(o2).focus(); } else { Ob(o2).className="InpTxt0"; } } /*Checkbox*/ function DoChk(o,o2,s){ this.OldCls = s || ""; if (o.checked==false) { o.parentNode.parentNode.className=this.OldCls; Ob("BtnChkAll").checked=false; } else { o.parentNode.parentNode.className="chked"; IsAllChk(o2,this.OldCls); } } function IsAllChk(o,s){ var ChkNums=0; var arrObj=Ob(o).getElementsByTagName("input"); this.OldCls = s || ""; for (i=0;i<arrObj.length;i++ ) { if (arrObj[ii].checked) { ChkNums+=1; arrObj[ii].parentNode.parentNode.className="chked"; } else { arrObj[ii].parentNode.parentNode.className=this.OldCls; } } //alert(ChkNums+":" +arrObj.length) if (ChkNums==arrObj.length-1) { Ob("BtnChkAll").checked=true; } else { Ob("BtnChkAll").checked=false; } } function ChkAll(o,o2,s){ var arrObj=Ob(o2).getElementsByTagName("input"); this.OldCls = s || ""; for (ii=1;ii<arrObj.length;ii++ ) { arrObj[ii].checked=o.checked; if (o.checked) { arrObj[ii].parentNode.parentNode.className="chked"; } else { arrObj[ii].parentNode.parentNode.className=this.OldCls; } } } function OppChk(){ var arrObj=Ob("Photos").getElementsByTagName("input"); for (ii=0;ii<arrObj.length;ii++ ) { arrObj[ii].checked=!arrObj[ii].checked; } IsAllChk(); } /*Test Nums*/ function IsIntNum(s){ var reIntNum=/^-?d+$/; return reIntNum.test(s); } function IsBetween(n0,n1,n2,t){ this.CompareType=t || 4; switch (this.CompareType) { case 0 : return (n0>n1 && n0<n2); case 1 : return (n0>=n1 && n0<n2); case 2 : return (n0>n1 && n0<=n2); default : return (n0>=n1 && n0<=n2); } }
推荐阅读
在table中插入多行,能使用与insertAdjacentHTML相似的功能吗?
对于div等元素来说,插入一段html是很容易的事情,但是对于表格来说就太难了。一般情况下,我们都是用appendChild的方式,一行行、一格格地添加,操作起来很繁锁。能不能拼一串字符,就能直接加入到表格中呢? >>>详细阅读
本文标题:一些常用的Javascript函数
地址:http://www.17bianji.com/kaifa2/JS/31253.html
1/2 1