作家
登录

多线程的全选复选框

作者: 来源:www.28hudong.com 2013-03-30 03:58:42 阅读 我要评论

复制代码 代码如下:<style> BODY {FONT-SIZE: 9pt;} table {FONT-SIZE: 9pt;} </style> <input type=checkbox id=checkall onclick=check_all()><label for=checkall>全部选择</label>     线程数:<input type=text id=the_thread value=10 size=2 maxlength=2 style="height:15px; font-size:12px;padding:0px"> <br> <table border=0> <tr><td style="width:100px;over-flow:hidden"><span id=show></span></td> <td style="width:400px;"> <table id=bar style="width:90%;height:10px;border:1px black solid;display:none"><tr> <td id=bar1 bgcolor=skyblue style="width:0%"></td> <td id=bar2 style="width:100%"></td> </tr></table> </td></tr> <tr><td colspan=2><span id=result></span></td></tr> </table> <script language="JavaScript"> /* This following code are designed and writen by Windy_sk <seasonx@163.net> You can use it freely, but u must held all the copyright items! */ var total = 505; var thread_num; var pre_thread; var thread = new Array(); var completed = 0; var start_time = null; for(i=0;i<total;i++)document.write("<input type=checkbox id=cbox>"); function init_para(){ thread_num = parseInt(the_thread.value); if(isNaN(thread_num)) thread_num = 10; pre_thread = Math.floor(total/thread_num); result.innerText = ""; bar1.style.width = "0%"; bar2.style.width = "100%"; bar.style.display = ""; } function check_all(){ checkall.disabled = true; init_para(); for(var i=0;i<thread_num;i++){ thread[i]=[setInterval("thread["+i+"][1]<pre_thread?check_unit("+i+"*pre_thread + thread["+i+"][1]++):clearInterval(thread["+i+"][0])",1),0]; } thread[i]=[setInterval("thread["+i+"][1]<total%thread_num?check_unit("+i+"*pre_thread + thread["+i+"][1]++):clearInterval(thread["+i+"][0])",1),0]; } function check_unit(num){ if(completed==0)start_time=new Date; cbox[num].checked=checkall.checked; completed++; var cur_rate = Math.round(completed*100/total); show.innerText = completed + "/" + total + " : " + cur_rate + "%"; bar1.style.width = cur_rate + "%"; bar2.style.width = (100-cur_rate) + "%"; if(completed == total){ completed = 0 checkall.disabled = false; result.innerText = "("+total+"单元/"+thread_num+"线程,总共耗时:"+((new Date)-start_time)+" ms)"; } } </script> 下面是运行效果 BODY {FONT-SIZE: 9pt;} table {FONT-SIZE: 9pt;} 全部选择     线程数: [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  推荐阅读

  将多选框选中时打勾的颜色

body { font-size:12px; } .checkbox { width:12px; height:12px; background-image:url(http://ucren.com/files/WebTex/setCheckbox/images/checkbox.gif); bac>>>详细阅读


本文标题:多线程的全选复选框

地址:http://www.17bianji.com/kaifa2/JS/31399.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)