首页 > web前端 > js教程 > 多线程的全选复选框_表单特效

多线程的全选复选框_表单特效

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-05-16 19:24:50
原创
1455 人浏览过
复制代码 代码如下:



    
线程数:












<script> <BR>/* <BR>This following code are designed and writen by Windy_sk <seasonx@163.net> <BR>You can use it freely, but u must held all the copyright items! <BR>*/ <BR>var total = 505; <BR>var thread_num; <BR>var pre_thread; <BR>var thread = new Array(); <BR>var completed = 0; <BR>var start_time = null; <br><br>for(i=0;i<total;i++)document.write("<input type=checkbox id=cbox>"); <br><br>function init_para(){ <BR>thread_num = parseInt(the_thread.value); <BR>if(isNaN(thread_num)) thread_num = 10; <BR>pre_thread = Math.floor(total/thread_num); <BR>result.innerText = ""; <BR>bar1.style.width = "0%"; <BR>bar2.style.width = "100%"; <BR>bar.style.display = ""; <BR>} <br><br>function check_all(){ <BR>checkall.disabled = true; <BR>init_para(); <BR>for(var i=0;i<thread_num;i++){ <BR>thread[i]=[setInterval("thread["+i+"][1]<pre_thread?check_unit("+i+"*pre_thread + thread["+i+"][1]++):clearInterval(thread["+i+"][0])",1),0]; <BR>} <BR>thread[i]=[setInterval("thread["+i+"][1]<total%thread_num?check_unit("+i+"*pre_thread + thread["+i+"][1]++):clearInterval(thread["+i+"][0])",1),0]; <BR>} <br><br>function check_unit(num){ <BR>if(completed==0)start_time=new Date; <BR>cbox[num].checked=checkall.checked; <BR>completed++; <BR>var cur_rate = Math.round(completed*100/total); <BR>show.innerText = completed + "/" + total + " : " + cur_rate + "%"; <BR>bar1.style.width = cur_rate + "%"; <BR>bar2.style.width = (100-cur_rate) + "%"; <BR>if(completed == total){ <BR>completed = 0 <BR>checkall.disabled = false; <BR>result.innerText = "("+total+"单元/"+thread_num+"线程,总共耗时:"+((new Date)-start_time)+" ms)"; <BR>} <BR>} <BR></script>

下面是运行效果

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板