image A onload执行次数:< span id="ThreadA">0< /span>< br>
image B onload执行次数:< span id="ThreadB">0< /span>< br>
image C onload执行次数:< span id="ThreadC">0< /span>
< script>
function Img(threadID,src)
{
var img = new Image;
img.onload = function()
{
var c = parseInt(document.getElementById(threadID).innerHTML);
document.getElementById(threadID).innerHTML=isNaN(c)1:++c;
}
img.src = src;
return img;
}
var imgA = new Img("ThreadA","attachment/1178365293_0.gif");
var imgB = new Img("ThreadB","attachment/1178365293_1.gif");
var imgC = new Img("ThreadC","attachment/1178365293_2.gif");
< /script>
是不是有点意思了
再看下面的代码:
< script>
//by Rimifon
var Threads = new Array;
onload = function()
{
for(var C=1;C< 501;C++)
{
Threads.push(new Thread(C));
}
}
function Go(sender)
{
var IsStart = sender.value=="全部开始";
for(var x in Threads)
{
Threads[x].Start = IsStart;
}
sender.value = "全部" + (IsStart"暂停":"开始");
}
function Thread(ID)
{
this.Start = 0;
var cursor = this;
var span = document.createElement("span");
var counter = document.createTextNode("0");
span.appendChild(counter);
var div = document.createElement("div");
div.appendChild(document.createTextNode("线程" + ID + ":"));
div.style.cursor = "pointer";
div.onclick = function()
{
cursor.Start = !cursor.Start;
}
div.oncontextmenu = function()
{
img.onload = null;
this.removeNode(true);
return false;
}
div.appendChild(span);
document.body.appendChild(div);
var img = new Image;
img.onload = function()
{
if(cursor.Start) counter.data = parseInt(counter.data) + 1;
div.style.backgroundColor = cursor.Start"#abcdef":"yellow";
}
img.src = "images/51js.gif";
}
< /script>
< input type=button value="全部开始" onclick="Go(this)">
< input type=button value="弹出对话框" onclick="alert('对话框测试')">
部分代码引自Rimifon。(转载 http://Dnew.cn)