通过window.onload 页面启动加载多个js函数,这样也执行第一个,还报出些第二个的测试参数,后停止运作,不知道什么原因?还望指点,谢谢!!<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>显示票数条形图</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script src="LoadingJS/Loading.js" type="text/javascript"></script>
<script language="JavaScript">
function invoke1()
{
var var1=0.5;// document.getElementById("var1").value;
alert("var1="+var1);
var loading_div1=document.getElementById("loading_div1");
alert("loading_div1="+loading_div1); // return Math.floor(Math.random()*num)+1;
Loading('', 'LoadingJS/Loading.jpg', 20, 100,loading_div1,var1)
} function invoke2()
{
var var2= 0.8;//document.getElementById("var2").value;
alert("var2="+var2);
var loading_div2=document.getElementById("loading_div2");
alert("loading_div2="+loading_div2);
Loading('', 'LoadingJS/Loading.jpg', 20, 200,loading_div2,var2);
}
function invoke3()
{
var var3= 0.9;//document.getElementById("var3").value;
alert("var3="+var3);
var loading_div3=document.getElementById("loading_div3");
alert("loading_div3="+loading_div3);
Loading('', 'LoadingJS/Loading.jpg', 20, 300,loading_div3,var3);
}
function invoke4()
{
var var4=0.4;// document.getElementById("var4").value;
alert("var4="+var4);
var loading_div4=document.getElementById("loading_div4");
alert("loading_div4="+loading_div4);
Loading('', 'LoadingJS/Loading.jpg', 20, 400,loading_div4,var4);
}
window.onload = function()
{
invoke1();
invoke2();
invoke3();
invoke4();
}
</script></head><body>
<div><ww:iterator value="allVoteList">
<input type="hidden" name="var<ww:property value='id'/>" value="<ww:property value='counter'/>">
</ww:iterator></div>
<!--<input type="button" name="Button" value="Button" onclick="invoke()">
<ww:iterator value="allVoteList">
<div id="loading_div<ww:property value='id'/>" ></div>
</ww:iterator>
-->
<div>
<div id="loading_div1" ></div>
</div>
<div>
<div id="loading_div2" ></div>
</div>
<div id="loading_div3" ></div>
<div id="loading_div4" ></div>
</body>
</html>
<html>
<head>
<title>显示票数条形图</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script src="LoadingJS/Loading.js" type="text/javascript"></script>
<script language="JavaScript">
function invoke1()
{
var var1=0.5;// document.getElementById("var1").value;
alert("var1="+var1);
var loading_div1=document.getElementById("loading_div1");
alert("loading_div1="+loading_div1); // return Math.floor(Math.random()*num)+1;
Loading('', 'LoadingJS/Loading.jpg', 20, 100,loading_div1,var1)
} function invoke2()
{
var var2= 0.8;//document.getElementById("var2").value;
alert("var2="+var2);
var loading_div2=document.getElementById("loading_div2");
alert("loading_div2="+loading_div2);
Loading('', 'LoadingJS/Loading.jpg', 20, 200,loading_div2,var2);
}
function invoke3()
{
var var3= 0.9;//document.getElementById("var3").value;
alert("var3="+var3);
var loading_div3=document.getElementById("loading_div3");
alert("loading_div3="+loading_div3);
Loading('', 'LoadingJS/Loading.jpg', 20, 300,loading_div3,var3);
}
function invoke4()
{
var var4=0.4;// document.getElementById("var4").value;
alert("var4="+var4);
var loading_div4=document.getElementById("loading_div4");
alert("loading_div4="+loading_div4);
Loading('', 'LoadingJS/Loading.jpg', 20, 400,loading_div4,var4);
}
window.onload = function()
{
invoke1();
invoke2();
invoke3();
invoke4();
}
</script></head><body>
<div><ww:iterator value="allVoteList">
<input type="hidden" name="var<ww:property value='id'/>" value="<ww:property value='counter'/>">
</ww:iterator></div>
<!--<input type="button" name="Button" value="Button" onclick="invoke()">
<ww:iterator value="allVoteList">
<div id="loading_div<ww:property value='id'/>" ></div>
</ww:iterator>
-->
<div>
<div id="loading_div1" ></div>
</div>
<div>
<div id="loading_div2" ></div>
</div>
<div id="loading_div3" ></div>
<div id="loading_div4" ></div>
</body>
</html>
Loading.js的代码如下:
//频率
var frequency = 1;
//步长
var step = 1;
//背景颜色
var loadingBgcolor = "blue";
//宽度
var loadingWidth = 500;
//要显示到的div
var loading_Div;
//终止条件
var timeID;
//百分比数
var varx;
/*
*参数说明:
*content:显示内容,可以为空;
*imageURL:将引用JS文件的路径设置即可;
*left:进度条显示位置left
*top:进度条显示位置top Loading('', 'LoadingJS/', 20, 100,loading_div1,var1)
*/
function Loading(content, imageURL, left, top,loading_div,varX)
{
//imageURL = imageURL + "Loading.jpg";
alert("imageURL="+imageURL);
alert("varX="+varX);
getVar(varX);
alert("!!!!!!!!!!!!!!!!!!!!!!!varx="+varx);
LoadTable(content, imageURL, left, top,loading_div);
showimage.style.display="";
timeID=window.setInterval("RefAct();", frequency);
alert("跳出RefAct函数");
alert("timeID="+timeID);
} function getVar(varX)
{
varx=varX;}function RefAct()
{
imgAct.width += step;
if(imgAct.width == loadingWidth*varx)
{
imgAct.width =imgAct.width;
clearInterval(timeID);
}
}function LoadTable(content, imageURL, left, top,loading_div)
{
getLoading_div(loading_div);
alert("进入了函数LoadTable,loading_div="+loading_div);
var strLoading;
strLoading = "";
strLoading += "<div id=\"showimage\" style=\"DISPLAY:none;Z-INDEX:100;LEFT:" + left+ "px;POSITION:absolute;TOP:" + top+ "px;\" align=\"center\">";
strLoading += "<TABLE id=\"Table1\" cellSpacing=\"0\" cellPadding=\"0\" width=\"" + loadingWidth + "\" border=\"1\" bgcolor=\"" + loadingBgcolor+ "\">";
strLoading += "<tr>";
strLoading += "<td align=\"center\">";
strLoading += "<font size=\"4\" face=\"Courier New, Courier, mono\"><strong>" + content + "</strong></font>";
strLoading += "</td>";
strLoading += "</tr>";
strLoading += "<TR>"; strLoading += "<TD class=\"Loading\" height=\"8\">";
strLoading += "<IMG id=\"imgAct\" height=\"8\" alt=\"\" src=\"" + imageURL + "\" width=\"0\">";
strLoading += "</TD>";
strLoading += "</TR>";
strLoading += "</TABLE>";
strLoading += "</div>";
loading_Div.innerHTML = strLoading;
}
function getLoading_div(loading_div)
{
loading_Div=loading_div;}
{
imgAct.width += step;
if(imgAct.width == loadingWidth*varx)
{
imgAct.width =imgAct.width;
clearInterval(timeID);
} } 应该是这里的错误,你的第一个
invoke1();
进来后setInterval执行;
invoke2(); 进来已修改timeID,造成timeID的多次赋值,修改
你最好把alert(timeID)看看
Loading.js
//频率
var frequency = 1;
//步长
var step = 1;
//背景颜色
var loadingBgcolor = "blue";
//宽度
var loadingWidth = 500;
//要显示到的div
var loading_Div;
//终止条件
var timeID = new Array();
//百分比数
var varx = new Array();
var v=0;
var num = 0 ;
/*
*参数说明:
*content:显示内容,可以为空;
*imageURL:将引用JS文件的路径设置即可;
*left:进度条显示位置left
*top:进度条显示位置top Loading('', 'LoadingJS/', 20, 100,loading_div1,var1)
*/
function Loading(content, imageURL, left, top,loading_div,varX)
{
//imageURL = imageURL + "Loading.jpg";
LoadTable(content, imageURL, left, top,loading_div);
document.getElementById("showimage"+num).style.display="";
alert(num+"ppppppp") ;
timeID[num]=window.setInterval("RefAct();", frequency);
getVar(varX) ;
num++ ;
} function getVar(varX)
{
varx[num]=varX;
alert("varx=="+num+"]]]]"+varx[num]);
}function RefAct()
{
var imgAct = document.getElementsByName("imgAct") ;
for(var i=0;i<imgAct.length;i++){
if(imgAct[i].width == loadingWidth*varx[i])
{
clearInterval(timeID[i]);
}else{
imgAct[i].width += step;
} }
}function LoadTable(content, imageURL, left, top,loading_div)
{
getLoading_div(loading_div);
var strLoading;
strLoading = "";
strLoading += "<div id=\"showimage"+num+"\" style=\"DISPLAY:none;Z-INDEX:100;LEFT:" + left+ "px;POSITION:absolute;TOP:" + top+ "px;\" align=\"center\">";
strLoading += "<TABLE id=\"Table1"+num+"\" cellSpacing=\"0\" cellPadding=\"0\" width=\"" + loadingWidth + "\" border=\"1\" bgcolor=\"" + loadingBgcolor+ "\">";
strLoading += "<tr>";
strLoading += "<td align=\"center\">";
strLoading += "<font size=\"4\" face=\"Courier New, Courier, mono\"><strong>" + content + "</strong></font>";
strLoading += "</td>";
strLoading += "</tr>";
strLoading += "<TR>"; strLoading += "<TD class=\"Loading\" height=\"8\">";
strLoading += "<IMG name=\"imgAct\" height=\"8\" alt=\"\" src=\"" + imageURL + "\" width=\"0\">";
strLoading += "</TD>";
strLoading += "</TR>";
strLoading += "</TABLE>";
strLoading += "</div>";
loading_Div.innerHTML = strLoading;}
function getLoading_div(loading_div)
{
loading_Div=loading_div;}html:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>显示票数条形图</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script src="LoadingJS/Loading.js" type="text/javascript"></script>
<script language="JavaScript">
function invoke1()
{
var var1=0.5;// document.getElementById("var1").value;
alert("var1="+var1);
var loading_div1=document.getElementById("loading_div1");
alert("loading_div1="+loading_div1); // return Math.floor(Math.random()*num)+1;
Loading('', 'LoadingJS/Loading.jpg', 20, 100,loading_div1,var1)
return true ;
} function invoke2()
{
var var2= 0.8;//document.getElementById("var2").value;
alert("var2="+var2);
var loading_div2=document.getElementById("loading_div2");
alert("loading_div2="+loading_div2);
Loading('', 'LoadingJS/Loading.jpg', 20, 200,loading_div2,var2);
return true;
}
function invoke3()
{
var var3= 0.9;//document.getElementById("var3").value;
alert("var3="+var3);
var loading_div3=document.getElementById("loading_div3");
alert("loading_div3="+loading_div3);
Loading('', 'LoadingJS/Loading.jpg', 20, 300,loading_div3,var3);
return true;
}
function invoke4()
{
var var4= 0.4;
alert("var4="+var4);
var loading_div4=document.getElementById("loading_div4");
alert("loading_div4="+loading_div4);
Loading('', 'LoadingJS/Loading.jpg', 20, 400,loading_div4,var4);
return true;
}function aaa()
{
var bool1 = invoke1();
if(bool1)
var bool2=invoke2();
if(bool2)
var bool3=invoke3();
if(bool3)
invoke4();
}
</script></head><body onload="aaa();">
<div><ww:iterator value="allVoteList">
<input type="hidden" name="var<ww:property value='id'/>" value="<ww:property value='counter'/>">
</ww:iterator></div>
<!--<input type="button" name="Button" value="Button" onclick="invoke()">
<ww:iterator value="allVoteList">
<div id="loading_div<ww:property value='id'/>" ></div>
</ww:iterator>
-->
<div>
<div id="loading_div1" ></div>
</div>
<div>
<div id="loading_div2" ></div>
</div>
<div id="loading_div3" ></div>
<div id="loading_div4" ></div>
</body>
</html>