js常用函数2008-8-16整理第2/2页
/*------------------------------------------------------------
判断输入文本是否为身份证号码,如为不正确则提示
text-------输入的身份证号码
使用例子onBlur="isPid(this)"
------------------------------------------------------------*/
function isPid(text)
{
var pid=text.value.Trim();
var temp="0123456789";
var temp1="0123456789xX";
if(pid!=""){
if(pid.length==15)
{
for(j=0; j<15; j++ )
{
var ch = pid.charAt(j);
if(temp.indexOf(ch)==-1)
{
alert("请输入正确的身份证号码!");
text.focus();
break;
}
}
}
else if(pid.length==18)
{
for(j=0; j<pid.length-1; j++ )
{
var ch = pid.charAt(j);
if(temp.indexOf(ch)==-1)
{
alert("请输入正确的身份证号码!");
text.focus();
break;
}
}
var ch1 = pid.charAt(pid.length-1);
if(temp1.indexOf(ch1)==-1)
{
alert("请输入正确的身份证号码!");
text.focus();
}
}
else{
alert("身份证号码的应为15位或18位!");
text.focus();
}}
}
/*------------------------------------------------------------
判断两次密码输入是否一致
text-------新密码
name-------再次输入新密码
使用例子checkPassword(form1.newpass,form1.newpass1)
------------------------------------------------------------*/
function checkPassword(text,text1)
{
var newpass=text.value.Trim();
var newpass1=text1.value.Trim();
if(newpass!=newpass1){
alert("两次输入新密码不一致!");
text.focus();
return true;
}
}
/**//*------------------------------------------------------------
判断是否包含非法字符,如含非法字符则提示
text-------输入文本
addtemp----除英文和数字外还可包含的字符
name-------提示的名字
include----提示中不允许包含的字符
使用例子onBlur="compareTwoDate(this,'@_','邮件','%*$')"
------------------------------------------------------------*/
function isChar(text,addtemp,name,include)
{
var temp="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"+addtemp;
for(j=0; j<text.value.length; j++ )
{
var ch = text.value.Trim().charAt(j);
if(temp.indexOf(ch)==-1)
{
alert(name+"中不允许包含'"+include+"'等字符!");
text.focus();
break;
}
}
}
/**//*------------------------------------------------------------
判断输入的是否为电子邮件,如含非法字符则提示
text-------输入的电子邮件
使用例子onBlur="isEmail(this)"
------------------------------------------------------------*/
function isEmail(text)
{
var email=text.value.Trim();
var m=email.indexOf("@");
var n=email.indexOf(".");
if(email!="")
{
if(m<1||m>email.length-3)
{
alert("请输入正确的电子邮件格式!");
text.focus();
return true;
}
else if(n<m+2||n>email.length-2)
{
alert("请输入正确的电子邮件格式!");
text.focus();
return true;
}
}
}
/**//*------------------------------------------------------------
判断输入文本是否为空,如为空则提示
text-------输入文本
使用例子onBlur="isNull(this,'姓名')"
------------------------------------------------------------*/
function isNull(text,name)
{
if(text.value.Trim()==null||text.value.Trim()=="")
{
alert(name+"不能为空!");
text.focus();
return true;
}
}
//允许被框架
function enableFrame(){
if (top.location == self.location){
alert("该操作被管理员禁止");
document.execCommand("stop");
}
}
//禁止被框架
function disableFrame(obj){
if(top.location != self.location){
window.open(obj);
}
}
//根据ID控制层的隐藏或者展开
function show_hide(obj){
if($(obj).style.display == "none"){
$(obj).style.display = "";
}else{
$(obj).style.display = "none";
}
}
/*****屏幕*******************/
//调用方法:
//WinPage.getPageWidth
//WinPage.getBody().width
var WinPage = {
getPageWidth: function()
{
return document.body.scrollWidth || document.documentElement.scrollWidth || 0;
},
getPageHeight: function()
{
return document.body.scrollHeight || document.documentElement.scrollHeight || 0;
},
getBodyWidth: function()
{
return document.body.clientWidth || document.documentElement.clientWidth || 0;
},
getBodyHeight: function()
{
return document.documentElement.clientHeight || document.body.clientHeight || 0;
},
getBodyLeft: function()
{
return window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0;
},
getBodyTop: function()
{
return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
},
getBody: function()
{
return {
width : this.getBodyWidth(),
height : this.getBodyHeight(),
left : this.getBodyLeft(),
top : this.getBodyTop()
};
},
getScreenWidth: function()
{
return window.screen.width;
},
getScreenHeight: function()
{
return window.screen.height;
}
};
//测试浏览器类型//
var Browser = new Object();
Browser.ua = window.navigator.userAgent.toLowerCase();
Browser.ie = /msie/.test(Browser.ua);
Browser.moz = /gecko/.test(Browser.ua);
/****************/
//------------------用于载入一个文件-------------//
var JsLoader = {
load: function(sUrl, fCallback)
{
var _script = document.createElement("script");
_script.setAttribute("type", "text/javascript");
_script.setAttribute("src", sUrl);
document.getElementsByTagName("head")[0].appendChild(_script);
if (Browser.ie)
{
_script.onreadystatechange = function()
{
if (this.readyState=="loaded" || this.readyState=="complete")
{
fCallback();
}
};
}
else if (Browser.moz)
{
_script.onload = function()
{
fCallback();
};
}
else
{
fCallback();
}
}
};
//实现一个StringBuffer
// var sb = new StringBuffer();
//sb.append("<table border='1'>");
//sb.append("<tr><td>A</td><td>B</td></tr>");
//sb.append("</table>")
//document.write(sb.toString());
function StringBuffer() {
this._strings_ = new Array;
}
StringBuffer.prototype.append = function(str) {
this._strings_.push(str);
}
StringBuffer.prototype.toString = function() {
return this._strings_.join("");
}
StringBuffer.prototype.reset= function() {
this._strings_ = new Array;
}
相关文章
javascript跨域总结之window.name实现的跨域数据传输
本文给大家介绍window.name实现的跨域数据传输,自己亲自实践了一下,真的非常好用,特此分享到脚本之家网站供大家参考2015-11-11JavaScript语句错误throw、try及catch实例解析
这篇文章主要介绍了JavaScript语句错误throw、try及catch实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-08-08js parentElement和offsetParent之间的区别
这里主要说的是 offsetParent 属性,这个属性在 MSDN 的文档中也没有解释清楚,这就让人更难理解这个属性。 这几天在网上找了些资料看看,再加上自己的一些测试,对此属性有了那么一点的了解,在这里总结一下。2010-03-03
最新评论