当前位置: 网学 > 编程文档 > JSP > 正文

Jscript的多线程的脚本

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/17
下载{$ArticleTitle}原创论文样式
    今天我们来分析的51JS的一段关于Jscript的多线程的脚本,原来是通过元素marquee实现的,好像img也可以实现。 中国自学编程网提供 www.zxbc.cn
注解见下:
 
<script type=\"text/javascript\">
//定义一过程
//var addCount = new Function(\"tagThread.innerHTML = tagThread.innerHTML * 1 + 1\");
//var addCount = new Function(\"alert();\");
//可实现多个线程,见下。
var addCount1 = function(){tagThread1.innerHTML = tagThread1.innerHTML * 1 + 1};
var addCount2 = function(){tagThread2.innerHTML = tagThread2.innerHTML * 1 - 1};
//生成线程类
var thrd = new Thread(1000);
thrd.Start(addCount1);//开始一线程
thrd.Start(addCount2);//又开始一线程

//以下是类定义部分:
function Thread(Timer)
{
 var thArr = ;  //相当于 var thArr = new Array();
 this.toString = function(){return \"测试线程实例。\"};//类字符串化,方法重写,很受启发。
 this.Timer = Timer || 1000; //如果Timer有初值, 否则Timer为1000 ,JS语言的特殊性,易读性不好,不好。
 //加入生成一个滚动元素marquee
 this.Tag = self.document.createElement(\"marquee\");
 this.Tag.appendChild(self.document.createTextNode(\"-\"));
 this.Tag.scrollDelay = this.Timer;
 //将滚动元素marquee加入div中
 var _div = document.createElement(\"div\");
 _div.style.height = 1;
 //_div.style.overflow = \"hidden\";
 _div.appendChild(this.Tag);
 //滚动事件
 this.Tag.onscroll = function(){
  for(var i = 0; i < thArr.length; i++)
   thArr[i](); //执行多个事件函数???第一次知道!以前只知道C#是可以这样的。
 }
 //将div加入document中
 new function main() //类初试化
 {
  if(self.document.readyState != \"complete\") //如果文档未完成
   return setTimeout(main);    //继续调用 
  self.document.body.appendChild(_div);    //直到文档调用完成后,加入_div(带滚动条的)
 }
 this.Start = function(thread)
 {
  thArr.push(thread); //函数元素入栈
 }
}
</script><body>执行次数:<span id=\"tagThread1\">0</span>
<br><span id=\"tagThread2\">100</span>
<br>
<input type=button value=\"弹出框\" onclick=\"alert(thrd)\"> [Page]
</body></html>

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号