作者uy3uy3 (铁男)
看板Ajax
标题[问题] 请问如何产生javascript动态图表?
时间Mon May 25 22:05:36 2009
<HTML>
<HEAD>
<TITLE>图表</TITLE>
<SCRIPT Language="JavaScript" src="diagram.js"></SCRIPT>
</HEAD>
<Body onload="statustxt();">
<div id='clock'></div>
<SCRIPT Language="JavaScript">
function statustxt(){
document.open();
D=new Diagram();
D.SetFrame(80, 160, 960, 360);
D.SetBorder(0, 100, 0, 100);
D.SetText("","", "Client Javascript程式");
D.XScale=" (s)";
D.YScale=" (v)";
D.SetGridColor("#F3F781");
D.Draw("#A9D0F5", "#F7BE81", false);
var t, T0, T1;
num=new Array();
T1=0;
for (t=0; t<100; t++)
{
T0=T1;
num[t]=Math.random()*100;
T1=num[t];
new Line(D.ScreenX(t), D.ScreenY(T0), D.ScreenX(t+1), D.ScreenY(T1),
"#DF7401", 2, "value");
}
document.close();
setTimeout("statustxt()",10);
}
</SCRIPT>
</BODY>
</HTML>
以上是HTML网页的程式码,程式码中的setTimeout()一直无法重复执行,
执行时网页会说"必须要有物件",
我有试过用<div id='clock'></div>实体物件,再利用clock.innerHTML,
可是我就不知道要加在什麽地方?
diagram.js是别人写的现成函式库,在下列网址下载
http://www.lutanho.net/diagram/
下载diagram.zip,解压缩後,将上面的程式码放在diagram目录下就可以跑了,
可是只能执行一次,无法重复执行
谢谢版上的大大
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.167.133.176
1F:→ andymai:对body onload的事件不熟~不过...为啥不要在setTimeout那 05/26 01:41
2F:→ andymai:边直接呼叫那支function? 05/26 01:42
3F:→ andymai:=.=没注意看~上面的话当我没讲 05/26 01:43
4F:推 Kelunyang:我觉得这个套件用一堆1px的区块画出圆饼图超帅的! 05/26 02:08
5F:→ fillano:setTimeout(statustxt,10); 不过setTimeout本来就不会重复 05/26 16:29
6F:→ uy3uy3:每格一段时间执行不是利用setTimeout函式吗? 05/26 16:40
7F:→ fillano:应该是setInterval啦。setTimeout只会跑一次。 05/26 21:59
8F:→ uy3uy3:改成setInterval,网页还是会说"必须要有物件" 05/27 09:15