来公司后所在项目组开发的是一个客户端的软件,软件界面采用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);
}
}
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。