一、思路
1、全选/全不选:
(1)监听全选按钮的点击事件,通过遍历每一个input标签,设置其状态设置为全选按钮的状态,来实现全选和全不选。
(2)更新全选框的状态,判断全选框状态的更新函数可以通过计数input[i]处于选中状态的个数(n)来设计,如果n == length,全选框为选中状态,后面的文字变成“全不选”;否则,全选框为未选中状态,后面的文字为“全选”。
2、input复选框的状态改变时,也会相应的改变全选框的状态。
为了优化网页性能,使用事件委托,监听其父元素的点击事件,事件委托的原理即事件冒泡,所以我们点击div里面的input时,它会根据冒泡原理,执行其父元素上的监听事件。而具体点击的哪一个input,可以通过target对象获取到。
3、反选
反选即让oInput[i].checked = !oInput[i].checked;
二、代码
Title 复制代码
效果图: