文章为作者原创,转载前请先与本人联系,转载请注明文章出处、保留作者信息,谢谢支持!
======================================================================*/
var alLeft = 0, alCenter = 1, alRight = 2; //水平对齐方式
var alTop = 0, alMiddle = 1, alBottom = 2; //垂直对齐方式
var f = new Array();
var cnt = 0;
function floatDiv(objId, align, vAlign, x, y, smooth)
{
/*浮动块对象
数据结构:
objId: 对象ID
align: 水平对齐方式,枚举型
vAlign:垂直对齐方式,枚举型内容
x, y: xy座标,整型
smooth:平滑移动,布尔型
*/
this.objId = objId;
this.align = align;
this.vAlign = vAlign;
this.x = x;
this.y = y;
this.smooth = smooth;
}
function addDiv(objId, align, vAlign, x, y, smooth)
{ //添加浮动块
f[cnt++] = new floatDiv(objId, align, vAlign, x, y, smooth);
}
function floatMove()
{ //重新定位各块位置
var objX, objY;
if (document.all)
{
var d = document.body;
//status = "scrollLeft:"+f[0].objId.style.pixelTop+"| offsetWidth:"+d.offsetWidth;
for (var i=0; i<f.length; i++)
{
switch (f[i].align)
{
case alLeft : objX = d.scrollLeft + f[i].x; break;
case alCenter: objX = d.scrollLeft + Math.ceil((d.offsetWidth - f[i].objId.offsetWidth)/2) + f[i].x; break;
case alRight : objX = d.scrollLeft + d.offsetWidth - f[i].x - f[i].objId.offsetWidth - 20; break; //减滚动条20
}
switch (f[i].vAlign)
{
case alTop : objY = d.scrollTop + f[i].y; break;
case alMiddle: objY = d.scrollTop + Math.ceil((d.offsetHeight - f[i].objId.offsetHeight)/2) + f[i].y; break;
case alBottom: objY = d.scrollTop + d.offsetHeight - f[i].y - f[i].objId.offsetHeight; break;
}
if (f[i].smooth) smoothMove(f[i].objId, objX, objY);
else
{
f[i].objId.style.pixelLeft = objX;
f[i].objId.style.pixelTop = objY;
}
}
}
if (document.layers)
{
for (var i=0; i<f.length; i++)
{
var objId = f[i].objId;
switch (f[i].align)
{
case alLeft : objX = pageXOffset + f[i].x; break;
case alCenter: objX = pageXOffset + Math.ceil((window.innerWidth-objId.width)/2) + f[i].x; break;
case alRight : objX = pageXOffset + window.innerWidth - f[i].x - document.objId.width; break;
}
switch (f[i].vAlign)
{
case alTop : objY = pageYOffset + f[i].y; break;
case alMiddle: objY = pageYOffset + Math.ceil(window.innerHeight/2) + f[i].y; break;
case alBottom: objY = pageYOffset + window.innerHeight - f[i].y - document.objId.height; break;
}
if (t[i].smooth) smoothMove(f[i].objId, objX, objY);
else
{
document.objId.left = objX;
document.objId.top = objY;
}
}
}
setTimeout("floatMove();",50);
}
function smoothMove(obj, x, y)
{
var percent;
if (document.all)
{
percent = .1 * (x - obj.style.pixelLeft);
if (percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent);
obj.style.pixelLeft += percent;
percent = .1 * (y - obj.style.pixelTop);
if (percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent);
obj.style.pixelTop += percent;
}
if (document.layers)
{
percent = .1 * (x - document.objId.left);
if (percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent);
document.objId.left += percent;
percent = .1 * (y - document.objId.top);
if (percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent);
document.objId.top += percent;
}
}
setTimeout("floatMove();",50);
调用例子:
<script language="javascript" src="lib/floatdiv.js"></script>
<script language="javascript">
if (navigator.appName == "Netscape")
{
document.write("<layer id=ad_hr top=300 width=100 height=120><a href=http://www.fpc.org.cn/hr/040522.htm target=_blank><img src='ad/hr40522.gif' width=120 height=180 border=0></a></layer>");
}
else
{
document.write("<div id=ad_hr style='position: absolute;width:120;top:300;left:5;visibility: visible;z-index: 1'><a href=http://www.fpc.org.cn/hr/040522.htm target=_blank><img src='ad/hr40522.gif' width=120 height=180 border=0></a></div>");
}
addDiv(ad_hr, alRight, alTop, 0, 30, true);
</script>
[原创]自己定义的简单方法验证表单数据
方法很简单,先是定义好要验证的数组比如:
check_array[0]= new Array(title,留言主题不能为空!);
然后判断,错误的就提示定义的内容,代码如下:
<script language="javascript">
//表单验证程序;
//定义获取表单元素;
function $()
{
var elements = new Array();
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);
if (arguments.length == 1)
return element;
elements.push(element);
}
return elements;
}
function checkform()
{
//定义要验证的表单数组;
var check_array=new Array();
check_array[0]= new Array("title","留言主题不能为空!");
check_array[1]= new Array("name","姓名不能为空!");
check_array[2]= new Array("email","电子邮件不能为空!");
check_array[3]= new Array("phone","电话不能为空!");
check_array[4]= new Array("note","留言内容不能为空!");
//验证定义表单是否为空;
for(var i=0;i<check_array.length;i++)
{
if($(check_array[i][0]).value=="")
{
alert(check_array[i][1]);
$(check_array[i][0]).focus();
return false;
}
}
}
</script>
几个表单验证的
function checkMail(obj,error)
{
if (obj == null)
return "NULL";
if (obj.value == "")
return "EMPTY";
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (filter.test(obj.value))
return true;
else
alert(error);
return false;
}
function verifyDottedIP(cntrl,errmsg1,errmsg2,flag)
{
ip_str = cntrl.value;
if (ip_str == "") {
if (flag == 1){
alert(errmsg1);
cntrl.select();
return false;
}
return true;
}else{
varval = 0;
vari = index = 0;
while (index < ip_str.lastIndexOf(".")){
k = index;
index = ip_str.indexOf(".", index);
val = toNumber(ip_str, k, index);
if (val < 0 || val > 255)
break;
i++; index++;
}
if (i == 3){
if (index == ip_str.length){
i = 2;
} else {
val = toNumber(ip_str,index, ip_str.length);
if (val < 0 || val > 255) i = 2;
}
}
if (i != 3) {
alert(errmsg2);
cntrl.select();
return false;
}
}
return true;
}
function verifyport(cntrl,errmsg1,errmsg2,flag)
{
varval = 0;
port_str = cntrl.value;
if (port_str == "") {
if (flag == 1){
alert(errmsg1);
cntrl.select();
return false;
}}
val = toNumber(port_str, 0, port_str.length);
if (val < 0 || val > 65535)
{
alert(errmsg2);
cntrl.select();
return false;
}
else
{
return true;
}
}
function checkname(field,err_blank,err_space,err_invalid)
{
if (field.value.indexOf(" ") >=0)
{
alert(err_space);
field.focus();
field.select();
return false;
}
left_trim(field);
right_trim(field);
if (field.value =="" | field.value == null)
{
alert(err_blank);
field.focus();
field.select();
return false;
}
if (checkOtherChar(field.value, err_invalid)==false)
{
field.focus();
field.select();
return false;
}
if (isChinese(field.value)==true)
{
field.focus();
field.select();
return false;
}
return true;
}
function isChinese(inputStr){
iLength = inputStr.length
for (i = 0; i < iLength; i++)
if (inputStr.charCodeAt(i) > 255){
alert("Input error!");
return true ;
}
return false ;
}
function left_trim(field)
{
var tmp_string = field.value;
while (''+tmp_string.charAt(0) == ' ')
tmp_string = tmp_string.substring(1,tmp_string.length);
field.value = tmp_string;
}
function right_trim(field)
{
var tmp_string = field.value;
while (''+tmp_string.charAt(tmp_string.length-1) == ' ')
tmp_string = tmp_string.substring(0,tmp_string.length-1);
field.value = tmp_string;
}
function checkOtherChar(str,errmsg) {
for(var loop_index=0; loop_index<str.length; loop_index++)
{
if(str.charAt(loop_index) == '~'
||str.charAt(loop_index) == '!'
||str.charAt(loop_index) == '@'
||str.charAt(loop_index) == '#'
||str.charAt(loop_index) == '$'
||str.charAt(loop_index) == '%'
||str.charAt(loop_index) == '^'
||str.charAt(loop_index) == '&'
||str.charAt(loop_index) == '*'
||str.charAt(loop_index) == '('
||str.charAt(loop_index) == ')'
||str.charAt(loop_index) == '+'
||str.charAt(loop_index) == '{'
||str.charAt(loop_index) == '}'
||str.charAt(loop_index) == '|'
||str.charAt(loop_index) == ':'
||str.charAt(loop_index) == '"'
||str.charAt(loop_index) == '<'
||str.charAt(loop_index) == '>'
||str.charAt(loop_index) == '?'
||str.charAt(loop_index) == '`'
||str.charAt(loop_index) == '='
||str.charAt(loop_index) == '['
||str.charAt(loop_index) == ']'
||str.charAt(loop_index) == '\\'
||str.charAt(loop_index) == ';'
||str.charAt(loop_index) == '\''
||str.charAt(loop_index) == ','
||str.charAt(loop_index) == '.'
||str.charAt(loop_index) == '/')
{
alert(errmsg);
return false;
}
}
return true;
}
function check_pwd_eq(element1,element2,errmsg)
{
if (element1.value == element2.value)
{
return true;
}
else
{
alert(errmsg);
element1.select();
return false;
}
}
function check_pwd(field,errmsg1)
{
if (field.value == "") {
alert(errmsg1);
field.focus();
return false;
}
return true;
}
function verifynum(cntrl,errmsg3,flag,errmsg1,errmsg2,from,to)
{
varval = 0;
num_str = cntrl.value;
if (num_str.indexOf(" ") >=0)
{
alert(errmsg3);
cntrl.focus();
cntrl.select();
return false;
}
if (flag == 1) {
if (num_str == "") {
alert(errmsg1);
return false;
}}
val = toNumber(num_str, 0, num_str.length);
if ((val < from || val > to) && (num_str != ""))
{
alert(errmsg2);
return false;
}
else
{
return true;
}
}
判断浏览器类型
<SCRIPT language=JavaScript>
if(navigator.appVersion.indexOf("MSIE 6.") != -1 ){
window.location = "111.htm" ;
}
</SCRIPT>
按钮背景图片替换
<input type=button style="background-image:url(a.gif)" value=test οnmοuseοver="this.style.backgroundImage='url(b.gif)'" οnmοuseοut='this.style.backgroundImage='url(a.gif)'' ID="Button1" NAME="Button1"/>
document.getElementById(id) 的最简化调用
/*--------------------------------------------------------------------------*/
/**
* 这个函数就 Ruby 了。我觉得它的作用主要有两个
* 1. 大概是 document.getElementById(id) 的最简化调用。
* 比如:$(aaa) 将返回 aaa 对象
* 2. 得到对象数组
* 比如: $(aaa,bbb) 返回一个包括id为aaa和bbb两个
input控件对象的数组。
*/
function $() {
var elements = new Array();
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);
if (arguments.length == 1)
return element;
elements.push(element);
}
return elements;
}
<script language="Javascript">
//屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键
//屏蔽F1帮助
function window.onhelp()
{
return false
}
function KeyDown()
{
//alert(event.keyCode);
//屏蔽 Alt+ 方向键 ← 屏蔽 Alt+ 方向键 →
if ((window.event.altKey)&&((window.event.keyCode==37)||(window.event.keyCode==39)))
{
//alert("不准你使用ALT+方向键前进或后退网页!");
event.returnValue=false;
}
//屏蔽退格删除键,屏蔽 F5 刷新键,Ctrl + R
if ((event.keyCode==116)||(event.ctrlKey && event.keyCode==82))
{
event.keyCode=0;
event.returnValue=false;
}
//屏蔽 Ctrl+n
if ((event.ctrlKey)&&(event.keyCode==78))
{
event.returnValue=false;
}
//屏蔽 shift+F10
if ((event.shiftKey)&&(event.keyCode==121))
{
event.returnValue=false;
}
//屏蔽 shift 加鼠标左键新开一网页
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
{
window.event.returnValue = false;
}
//屏蔽Alt+F4
if ((window.event.altKey)&&(window.event.keyCode==115))
{
window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
return false;
}
//屏蔽Ctrl+A
if((event.ctrlKey)&&(event.keyCode==65))
{
return false;
}
return false;
}
document.οnkeydοwn=KeyDown;
</script>