关闭窗口问题! IE并不会等待你的settimeout执行完毕后才关闭页面,你的程序未完全执行完页面就关闭了你可以自己在页面上方一个关闭的button,模拟这种效果,IE的是不行的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 已经解决 现将代码贴出 与大家分享 a.htm<script>function a(){ window.showModalDialog("b.htm","退出窗口","dialogWidth=360px;dialogHeight=230px");}</script><body onbeforeunLoad="a();"></body>b.htm<style type="text/css">#divLoadCont{position:absolute; z-index:500; left:0; top:0; width:100%; height:98%; clip:rect(0,100%,100%,0); background-color:transparent; layer-background-color:white; }#divLoad1{position:absolute; layer-background-color:silver; background-color:silver}#divLoad2{position:absolute; left:0; top:0; layer-background-color:navy; background-color:navy}#divLoadText{position:absolute; background-color:transparent; font-family:arial,helvetica; color:Navy; font-size:14px; } </style><script language="JavaScript" type="text/javascript">function lib_bwcheck(){ this.ver=navigator.appVersion this.agent=navigator.userAgent this.dom=document.getElementById?1:0 this.opera5=this.agent.indexOf("Opera 5")>-1 this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0; this.ie4=(document.all && !this.dom && !this.opera5)?1:0; this.ie=this.ie4||this.ie5||this.ie6 this.mac=this.agent.indexOf("Mac")>-1 this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; this.ns4=(document.layers && !this.dom)?1:0; this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5) return this}var bw=new lib_bwcheck()numImages=20 //速度loaderWidth=300 //进度条长度currentImg=0function lib_doc_size(){ this.x=0;this.x2=bw.ie && document.body.offsetWidth-20||innerWidth||0; this.y=0;this.y2=bw.ie && document.body.offsetHeight-5||innerHeight||0; if(!this.x2||!this.y2) return message('Document has no width or height') this.x50=this.x2/2;this.y50=this.y2/2; return this;}function lib_obj(obj,nest){ nest=(!nest) ? "":'document.'+nest+'.' this.evnt=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+"document.layers." +obj):0; this.css=bw.dom||bw.ie4?this.evnt.style:this.evnt; this.ref=this.css this.w=this.evnt.offsetWidth||this.css.clip.width|| this.ref.width||this.css.pixelWidth||0; return this}lib_obj.prototype.moveIt = function(x,y){ this.x=x;this.y=y; this.css.left=x;this.css.top=y}lib_obj.prototype.clipTo = function(t,r,b,l,setwidth){ this.ct=t; this.cr=r; this.cb=b; this.cl=l if(bw.ns4){ this.css.clip.top=t;this.css.clip.right=r this.css.clip.bottom=b;this.css.clip.left=l }else{ if(t<0)t=0;if(r<0)r=0;if(b<0)b=0;if(b<0)b=0 this.css.clip="rect("+t+","+r+","+b+","+l+")"; if(setwidth){this.css.pixelWidth=this.css.width=r; this.css.pixelHeight=this.css.height=b} }}var oLoad2function startLoading(){ page=new lib_doc_size() oLoadCont=new lib_obj('divLoadCont') oLoad=new lib_obj('divLoad1','divLoadCont') oLoad2=new lib_obj('divLoad2','divLoadCont.document.divLoad1') oLoadText=new lib_obj('divLoadText','divLoadCont.document.divLoad1') oLoad.moveIt(page.x50-loaderWidth/2,page.y50-20) oLoadText.moveIt(loaderWidth/2 - oLoadText.w/2,10) oLoad.clipTo(0,loaderWidth,40,0,1) oLoad2.per = loaderWidth/numImages}function loadIt(ok){ currentImg++ if(oLoad2) oLoad2.clipTo(0,oLoad2.per*currentImg,40,0,1) if(!ok){ oLoadCont.css.visibility='hidden' oLoadCont=null; oLoad1=null; oLoad2=null; }}function loadIt_display(ok){ currentImg++ if(oLoad2) oLoad2.clipTo(0,oLoad2.per*currentImg,40,0,1) if(currentImg<=numImages) setTimeout("loadIt_display(1)",500) else{ oLoadCont.css.visibility='hidden' window.close(); //window.location="file:///c|/" }}</script><div id="divLoadCont"> <div id="divLoad1"> <div id="divLoad2"></div><br> <div id="divLoadText">Closing......</div> </div></div><script>//var str="";var str="AAAAAAA";var i=str.length;function fnJD(){ if(Txt.innerText.length==i){window.opener=null;window.close();} if(Txt.innerText.length>=str.length) Txt.innerText=""; if(Txt.innerText.length<=0){Txt.innerText+=str.substr(0,1);} else { //alert("AAAA"); Txt.innerText+=str.substr(Txt.innerText.length,1); alert } window.setTimeout("fnJD()",1000);}</script><body onLoad="startLoading();loadIt_display(1);"><span id="t" style="font-size:50">Closing</span><br><br><span id="Txt" style="font-size:50"></span></body> 求解一段javascript,为什么满足条件时不返回false 这代码不知道哪里有问题,总是不停的发送请求。 只知道ID的一部分,能否定位某个控件? 求仿csdn右下角推荐代码 初学者提问,为什么老是提示 缺少对象啊! onload事件为什么有经常失效? easyUi返回值的问题! 求iframe使用的demo,比较全面的,或者URL也行 怎么一创建ActiveXObject就出错阿? 请问怎样控制marquee的滚动速度? 谁有可以对文本框进行编辑的程序 繁琐刷新问题,不胜感激!感谢!
a.htm
<script>
function a()
{
window.showModalDialog("b.htm","退出窗口","dialogWidth=360px;dialogHeight=230px");
}
</script>
<body onbeforeunLoad="a();">
</body>b.htm
<style type="text/css">
#divLoadCont{position:absolute; z-index:500; left:0; top:0; width:100%; height:98%; clip:rect(0,100%,100%,0); background-color:transparent; layer-background-color:white; }
#divLoad1{position:absolute; layer-background-color:silver; background-color:silver}
#divLoad2{position:absolute; left:0; top:0; layer-background-color:navy; background-color:navy}
#divLoadText{position:absolute; background-color:transparent; font-family:arial,helvetica; color:Navy; font-size:14px; }
</style>
<script language="JavaScript" type="text/javascript">
function lib_bwcheck()
{
this.ver=navigator.appVersion
this.agent=navigator.userAgent
this.dom=document.getElementById?1:0
this.opera5=this.agent.indexOf("Opera 5")>-1
this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
this.ie=this.ie4||this.ie5||this.ie6
this.mac=this.agent.indexOf("Mac")>-1
this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
this.ns4=(document.layers && !this.dom)?1:0;
this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
return this
}var bw=new lib_bwcheck()
numImages=20 //速度
loaderWidth=300 //进度条长度currentImg=0
function lib_doc_size(){
this.x=0;this.x2=bw.ie && document.body.offsetWidth-20||innerWidth||0;
this.y=0;this.y2=bw.ie && document.body.offsetHeight-5||innerHeight||0;
if(!this.x2||!this.y2) return message('Document has no width or height')
this.x50=this.x2/2;this.y50=this.y2/2;
return this;
}
function lib_obj(obj,nest){
nest=(!nest) ? "":'document.'+nest+'.'
this.evnt=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+"document.layers." +obj):0;
this.css=bw.dom||bw.ie4?this.evnt.style:this.evnt;
this.ref=this.css
this.w=this.evnt.offsetWidth||this.css.clip.width||
this.ref.width||this.css.pixelWidth||0;
return this
}
lib_obj.prototype.moveIt = function(x,y){
this.x=x;this.y=y; this.css.left=x;this.css.top=y
}
lib_obj.prototype.clipTo = function(t,r,b,l,setwidth){
this.ct=t; this.cr=r; this.cb=b; this.cl=l
if(bw.ns4){
this.css.clip.top=t;this.css.clip.right=r
this.css.clip.bottom=b;this.css.clip.left=l
}else{
if(t<0)t=0;if(r<0)r=0;if(b<0)b=0;if(b<0)b=0
this.css.clip="rect("+t+","+r+","+b+","+l+")";
if(setwidth){this.css.pixelWidth=this.css.width=r;
this.css.pixelHeight=this.css.height=b}
}
}
var oLoad2
function startLoading(){
page=new lib_doc_size()
oLoadCont=new lib_obj('divLoadCont')
oLoad=new lib_obj('divLoad1','divLoadCont')
oLoad2=new lib_obj('divLoad2','divLoadCont.document.divLoad1')
oLoadText=new lib_obj('divLoadText','divLoadCont.document.divLoad1')
oLoad.moveIt(page.x50-loaderWidth/2,page.y50-20)
oLoadText.moveIt(loaderWidth/2 - oLoadText.w/2,10)
oLoad.clipTo(0,loaderWidth,40,0,1)
oLoad2.per = loaderWidth/numImages
}
function loadIt(ok){
currentImg++
if(oLoad2) oLoad2.clipTo(0,oLoad2.per*currentImg,40,0,1)
if(!ok){
oLoadCont.css.visibility='hidden'
oLoadCont=null; oLoad1=null; oLoad2=null;
}
}
function loadIt_display(ok)
{
currentImg++
if(oLoad2) oLoad2.clipTo(0,oLoad2.per*currentImg,40,0,1)
if(currentImg<=numImages) setTimeout("loadIt_display(1)",500)
else{
oLoadCont.css.visibility='hidden'
window.close();
//window.location="file:///c|/"
}
}
</script>
<div id="divLoadCont">
<div id="divLoad1">
<div id="divLoad2"></div><br>
<div id="divLoadText">Closing......</div>
</div>
</div><script>
//var str="";
var str="AAAAAAA";
var i=str.length;function fnJD()
{
if(Txt.innerText.length==i){window.opener=null;window.close();}
if(Txt.innerText.length>=str.length) Txt.innerText="";
if(Txt.innerText.length<=0){Txt.innerText+=str.substr(0,1);}
else
{
//alert("AAAA");
Txt.innerText+=str.substr(Txt.innerText.length,1);
alert
}
window.setTimeout("fnJD()",1000);
}
</script>
<body onLoad="startLoading();loadIt_display(1);">
<span id="t" style="font-size:50">Closing</span><br><br>
<span id="Txt" style="font-size:50"></span>
</body>