动态按钮生成器(上)
网络整理 - 07-26
很COOL的,大家一起来研究研究!<html><head><meta http-equiv=Content-Type content="text/html; charset=gb2312"><script language="javascript">
<!--Hide
//timer
speed=10;//Array to make Objects
Imagi=new Array();//numbers of Link
no_of_images=0;currentImage=-1;function checkBrowser(){var bname=navigator.appName;var ver=parseInt(navigator.appVersion);if(bname=="Netscape"&&ver>=3||bname=="Microsoft Internet Explorer"&&ver>=4);else{alert('You need Netscape Navigator 3 and above or Microsoft Internet Explorer 4 and above')
}}checkBrowser();//The Image Object
function ImageObject(Name,OffSrcPro,OffSrc,OnSrcPro,OnSrc,Width,Height,Alt,Border,URL,LinkTarget){this.Name=Name;this.OffSrcPro=OffSrcPro;this.OffSrc=OffSrc;this.OnSrcPro=OnSrcPro;this.OnSrc=OnSrc;this.Width=Width;this.Height=Height;this.Alt=Alt;this.Border=Border;this.URL=URL;this.LinkTarget=LinkTarget;this.length=11;}function headerSelect(grut,grutv){if(grut.options[0].selected){grutv.value="";}else{for(var y=0;y<grut.length;y++){if(grut.options[y].selected){grutv.value="";grutv.value+=grut.options[y].text;}}}}//Function Performing Form Validation
function checkMe(Me){with(Me){SrcBox1.focus();SrcBox1.blur();SrcBox2.focus();SrcBox2.blur();if(URLBox.value=="http://"||URLBox.value==""){alert("连接的URL没有设置");
URLBox.focus();
return false;
}if(SrcBox1.value==""){alert("MouseOut图片尚未设置");
SrcBox1.focus();
return false;
}if(SrcBox2.value==""){
alert("MouseOver图片尚未设置");
SrcBox2.focus();
return false;
}
if(NameBox.value==""){
alert("图片尚未命名");
NameBox.focus();
return false;
}
return true;}}
function checkAndShow(){
with(window.document.mouseOverForm.Images){if(options.length!=0){for(var i=0;i<options.length;i++){if(options[i].selected){with(window.document.mouseOverForm){URLBox.value=Imagi[i].URL;TargetBox.value=Imagi[i].LinkTarget;HeadSrc1.value=Imagi[i].OffSrcPro;HeadSrc2.value=Imagi[i].OnSrcPro;SrcBox1.value=Imagi[i].OffSrc;SrcBox2.value=Imagi[i].OnSrc;NameBox.value=Imagi[i].Name;BorderBox.value=Imagi[i].Border
AltBox.value=Imagi[i].Alt;WidthBox.value=Imagi[i].Width;HeightBox.value=Imagi[i].Height;currentImage=i;if(HeadSrc1.value=="file:///")
Header1.options[1].selected=true;else if(HeadSrc1.value=="http://")
Header1.options[2].selected=true;else if(HeadSrc1.value=="")
Header1.options[0].selected=true;if(HeadSrc2.value=="file:///")
Header2.options[1].selected=true;else if(HeadSrc2.value=="http://")
Header2.options[2].selected=true;else if(HeadSrc2.value=="")
Header2.options[0].selected=true;}}}}
}
}function insertItem(){with(window.document.mouseOverForm){if(checkMe(window.document.mouseOverForm)){Imagi[no_of_images]=new ImageObject(NameBox.value,HeadSrc1.value,SrcBox1.value,HeadSrc2.value,SrcBox2.value,WidthBox.value,HeightBox.value,AltBox.value,BorderBox.value,URLBox.value,TargetBox.value);Images.length+=1;Images.options[Images.length-1].text=Imagi[no_of_images].Name;++no_of_images;CleanBoxes(window.document.mouseOverForm);CleanBoxes(window.document.mouseOverForm);}}}//Clean options[0] when page loaded
function Clean(){abc=document.forms[0].Images;if(Imagi.length==0&&abc.length!=0){for(var loop=0;loop<abc.length;loop++)
abc.options[loop]=null;}}function UpdateOption(){with(window.document.mouseOverForm){if(currentImage!=-1){if(confirm("确信要更新这些数据?")){Imagi[currentImage].URL=URLBox.value;Imagi[currentImage].LinkTarget=TargetBox.value;Imagi[currentImage].Name=NameBox.value;Imagi[currentImage].OffSrcPro=HeadSrc1.value;Imagi[currentImage].OnSrcPro=HeadSrc2.value;Imagi[currentImage].OffSrc=SrcBox1.value;Imagi[currentImage].OnSrc=SrcBox2.value;Imagi[currentImage].Width=WidthBox.value;Imagi[currentImage].Height=HeightBox.value;Imagi[currentImage].Alt=AltBox.value;Imagi[currentImage].Border=BorderBox.value;Images.options[currentImage].text=Imagi[currentImage].Name;alert("数据已经更新!");CleanBoxes(window.document.mouseOverForm);CleanBoxes(window.document.mouseOverForm);}}else
alert("你尚未选择任何项目!");}}function removeIt(){if(document.mouseOverForm.Images.selectedIndex<0)
alert("你尚未选择任何项目!");with(document.mouseOverForm.Images){for(var t=0;t<length;t++){if(options[t].selected){if(confirm("确信移去图片?")){for(var z=t;z<length-1;z++){Imagi[z].URL=Imagi[z+1].URL;Imagi[z].LinkTarget=Imagi[z+1].LinkTarget;Imagi[z].OffSrcPro=Imagi[z+1].OffSrcPro;Imagi[z].OnSrcPro=Imagi[z+1].OnSrcPro;Imagi[z].OffSrc=Imagi[z+1].OffSrc;Imagi[z].OnSrc=Imagi[z+1].OnSrc;Imagi[z].Name=Imagi[z+1].Name;Imagi[z].Border=Imagi[z+1].Border;Imagi[z].Alt=Imagi[z+1].Alt;Imagi[z].Height=Imagi[z+1].Height;Imagi[z].Width=Imagi[z+1].Width;}
Imagi.length-=1;--no_of_images;options[t]=null;CleanBoxes(window.document.mouseOverForm);}}}}}
function Debug(){var no=prompt("Please enter the Object number you want to debug","");var second_argu="Imagi["+no+"]";show_props(Imagi[no],second_argu);}//for debugging usage
function show_props(obj,obj_name){var result="";for(var i in obj)
result+=obj_name+"."+i+" = "+obj[i]+"\n";alert(result);}//Clean the options[0] when page loaded
function Clean(){abc=document.mouseOverForm.Images;if(Imagi.length==0&&abc.length!=0){for(var loop=0;loop<abc.length;loop++)
abc.options[loop]=null;}}//Clean the value in the fields
function CleanBoxes(argv){var x=0;//counter
while(x!=argv.length-1){
if(argv.elements[x].type=="text"){argv.elements[x].value="";}x++;argv.URLBox.value="http://";argv.Header1.options[0].selected=true;argv.Header2.options[0].selected=true;argv.HeadSrc1.focus();argv.HeadSrc1.blur();argv.HeadSrc1.value="";argv.HeadSrc2.focus();argv.HeadSrc2.blur();argv.HeadSrc2.value="";
argv.SrcBox1.focus();argv.SrcBox1.blur();argv.SrcBox1.value="";argv.SrcBox2.focus();argv.SrcBox2.blur();argv.SrcBox2.value="";
argv.URLBox.focus();}}closedd=true;function PopDrive(no){if(closedd){Box=no;First='<html><body bgcolor="white" text="#000000" link="#000099" vlink="#663366" alink="#ff0000" onUnLoad="window.opener.closedd=true;" ><center><br><form><input type="file"><br><br><input type="Button" value="OK" ><input type="Button" value="Cancel" ></form></center><blockquote><font face="宋体" size=2>通过"浏览"按钮从硬盘上选择图片文件,然后按"OK"继续。</font></blockquote></body></html>';Pop=window.open("","DriveWin","Width=350,Height=200,resizable=yes");Pop.document.open();Pop.document.write(First);closedd=false;}else
Pop.focus();}function Make(na,no){na.Drive.focus();na.Drive.blur();if(na.Drive.value==""){
alert("文件尚未选择!");Pop.focus();}else{if(no==1){document.mouseOverForm.SrcBox1.value=na.Drive.value;
document.mouseOverForm.Header1.options[1].selected=true;document.mouseOverForm.HeadSrc1.value="file:///";}else if(no==2){document.mouseOverForm.SrcBox2.value=na.Drive.value;
document.mouseOverForm.Header1.options[1].selected=true;document.mouseOverForm.HeadSrc2.value="file:///";}Pop.close();window.closedd=true;}}//Check the image source,then change the protocol if needed
function CheckAndChange(no){if(no==1){SrcBox=document.mouseOverForm.SrcBox1;Selection=document.mouseOverForm.Header1;ProtocolBox=document.mouseOverForm.HeadSrc1;}else if(no==2){SrcBox=document.mouseOverForm.SrcBox2;Selection=document.mouseOverForm.Header2;ProtocolBox=document.mouseOverForm.HeadSrc2;}var c=SrcBox.value.indexOf("http://");var d=SrcBox.value.indexOf("file:///");if(c>=0){Selection.options[2].selected=true;ProtocolBox.value="http://";Stringo2=SrcBox.value.substring(c+7);SrcBox.value=Stringo2;}else if(d>=0){Selection.options[1].selected=true;ProtocolBox.value="file:///";Stringo3=SrcBox.value.substring(d+8);SrcBox.value=Stringo3;}var find2=SrcBox.value.indexOf("http://www.cuoxin.com/")
if(SrcBox.value.indexOf(":\\")>0||SrcBox.value.indexOf("|/")>0){Selection.options[1].selected=true;ProtocolBox.value="file:///";var cr=SrcBox.value.indexOf(":\\");if(cr>=0){SrcBox.value=stringInsert(SrcBox.value,"|",cr);for(var countIt=cr;countIt<SrcBox.value.length;countIt++){var Athere=SrcBox.value.charAt(countIt);if(Athere=="\\")
SrcBox.value=stringInsert(SrcBox.value,"http://www.cuoxin.com/",countIt);
}}}else if((SrcBox.value.indexOf(".com")>0)||(SrcBox.value.indexOf(".edu")>0)||(SrcBox.value.indexOf(".org")>0)||(SrcBox.value.indexOf(".net")>0)||(SrcBox.value.indexOf(".gov")>0)||(SrcBox.value.indexOf(".mil")>0)||(SrcBox.value.indexOf(".arpa")>0)||(SrcBox.value.indexOf(".int")>0)){Selection.options[2].selected=true;ProtocolBox.value="http://";}else if(find2>0){var yes=0;var c=0;var Stringoo2=SrcBox.value.substring(0,find2);for(var a=0;a<3;a++){
var b=Stringoo2.indexOf(".",c);if(b>0){c=b+1;
yes++;}}if(yes==3){
Selection.options[2].selected=true;ProtocolBox.value="http://";}}
else{Selection.options[0].selected=true;ProtocolBox.value="";}if(SrcBox.value!=""){var Stringo=SrcBox.value.toUpperCase();if(Stringo.indexOf(".GIF")<0&&Stringo.indexOf(".JPG")<0&&Stringo.indexOf(".JPEG")<0&&Stringo.indexOf(".PNG")<0){alert("看样子没有设置正确的图片文件:)");SrcBox.focus();}}}function stringInsert(initial,replace,position){start=parseInt(position);end=start+replace.length;newVal=initial.substring(0,start)+replace+initial.substring(end,initial.length);return newVal;}function isDigit(form){for(var x=0;x<form.value.length;x++){var y=form.value.charAt(x);var g=parseInt(y);if(g>=0&&g<=9);else{alert("非法的参数!");form.focus();return false;}}return true;}function InsertBelow()
{with(window.document.mouseOverForm)
{if(Images.selectedIndex!=-1)
{for(var g=0;g<Imagi.length-1;g++)
{if(Images.options[g].selected)
{var r=no_of_images;Imagi[r]=new ImageObject(Imagi[r-1].Name,Imagi[r-1].OffSrcPro,Imagi[r-1].OffSrc,Imagi[r-1].OnSrcPro,Imagi[r-1].OnSrc,Imagi[r-1].Width,Imagi[r-1].Height,Imagi[r-1].Alt,Imagi[r-1].Border,Imagi[r-1].URL,Imagi[r-1].LinkTarget);for(var p=Imagi.length-2;p>g;p--)
{Imagi[p].Name=Imagi[p-1].Name;Imagi[p].OffSrcPro=Imagi[p-1].OffSrcPro;Imagi[p].OffSrc=Imagi[p-1].OffSrc;Imagi[p].OnSrcPro=Imagi[p-1].OnSrcPro;Imagi[p].OnSrc=Imagi[p-1].OnSrc;Imagi[p].Width=Imagi[p-1].Width;Imagi[p].Height=Imagi[p-1].Height;Imagi[p].Alt=Imagi[p-1].Alt;Imagi[p].Border=Imagi[p-1].Border;Imagi[p].URL=Imagi[p-1].URL;Imagi[p].LinkTarget=Imagi[p-1].LinkTarget;}
Imagi[g+1].URL=URLBox.value;Imagi[g+1].LinkTarget=TargetBox.value;Imagi[g+1].Name=NameBox.value;Imagi[g+1].OffSrcPro=HeadSrc1.value;Imagi[g+1].OnSrcPro=HeadSrc2.value;Imagi[g+1].OffSrc=SrcBox1.value;Imagi[g+1].OnSrc=SrcBox2.value;Imagi[g+1].Width=WidthBox.value;Imagi[g+1].Height=HeightBox.value;Imagi[g+1].Alt=AltBox.value;Imagi[g+1].Border=BorderBox.value;no_of_images++;