变态的全选(上万个复选框的全选你享受过吗?)

77tt77 2011-05-27
:cry:
上帝不知道分页显示吗?
BuN_Ny 2011-05-27

<div><input type="button" id="all" value="全选" disabled="disabled"/></div>
<div id="test"></div>

 

长见识了,呵呵,没遇到过这种上帝。一般都是能忽悠的过去的上帝。

 

var index = 0;
function test(time){
	var html = [];
	for(var i=0; i<100; ++i){
		html.push('<input type="checkbox"/>'+(++index)+'<br>');
	}
	$('#test').append(html.join(''));
	if(time--){
		setTimeout('test('+time+')', 10);
	}else{
		$('#all').removeAttr('disabled').bind('click', function(){
			var t = $('#test').detach();
			t.find(':checkbox').attr('checked', true);
			t.appendTo('body');
		});
	}
};
test(99);
 
BuN_Ny 2011-05-27
int08h 写道
太扯了……好好的一个200ms不到的功能,竟然能被用上缓冲、异步等等方法……


话说200ms不用,那不是针对IE,在IE上还是能感觉到等待时间的。不过这种性能,已经十分可观了,根本不需要搞的更麻烦。
cevin 2011-06-23
Aaron5 写道
amosleaf 写道
光这样不够。
全选后,肯定有别的操作,比方说可以全选然后删除。
如果没渲染完,就点击删除,会咋样。
还得设个flag


恩。这个问题是会有。不过可以设置个标志进行判断或者其他处理。

还有一点就是我只是要提供一个处理大数据量HTML元素渲染的一个个人思路。至于这个思路会引起其他后续操作问题不在这篇文章讨论之列。

期待能有其他方法解决大量HTML元素同时渲染问题的思路。



用lz的方法,点击全选,屏蔽回车键,form绑定submit事件返回false……总之让他不能提交就行
陈碧滔 2011-07-08
真有这个需求么?
z95469 2011-07-13
你也不用循环啊,jquery本身就有循环的
oo-java 2011-07-29
全选非常快啊,只有600来ms啊,到时创建10000个checkbox花了25000ms,
pdreamer 2011-08-09
啥不分页涅
wenwena 2011-08-12
  我们这里也是啊  上帝老爱折磨我们
axiheyhey 2011-09-01
int08h 写道
不移出DOM,用了113232ms
移出DOM,用了157ms
根本不需要考虑别的方式了,直接移出DOM操作就行

var t = $('#tttt').detach();
t.find(':checkbox').attr('checked', true);
t.appendTo('body');


这样会闪屏吧?
Global site tag (gtag.js) - Google Analytics