简单排版

<style>

.box {
display: flex;
align-items: center;
} #allSelect,
p {
width: 20px;
height: 20px;
margin-top: 5px;
position: relative;
} li {
list-style: none;
display: flex;
align-items: center;
} span {
width: 20px;
height: 20px;
border: 1px solid #000;
display: inline-block;
} .selectk {
position: absolute;
width: 100%;
height: 100%;
background: #000;
top: 0;
left: 0;
}
.selectk::after {
content: "✔";
display: inline-block;
text-align: center;
line-height: 20px;
color: #fff;
}
</style>
</head>
<body>
<div class="box">全选:<div id="allSelect"><span></span></div>
</div>
<ol>
<li><p><span></span></p></li>
<li><p><span></span></p></li>
<li><p><span></span></p></li>
<li><p><span></span></p></li>
<li><p><span></span></p></li>
<li><p><span></span></p></li>
<li><p><span></span></p></li>
</ol>
</body>

功能实现

  <script>
var arr = [];
//获取所有的复选按钮
var ospan = document.querySelectorAll("p>span");
//获取页面的全选按钮
var checkBtn = document.querySelector("#allSelect");
//复选按钮点击时
[...ospan].forEach(function(item,index){
item.addEventListener("click",function(){
this.classList.toggle("selectk");
if(this.classList.contains("selectk")){
arr.push(index);
}else{
arr.splice(index,1);
}
if(arr.length === [...ospan].length){
checkBtn.classList.add("selectk")
}else{
checkBtn.classList.remove("selectk")
}
})
})
// 点击全选按钮
checkBtn.addEventListener("click",function(){
this.classList.toggle("selectk");
if(this.classList.contains("selectk")){
[...ospan].forEach(function(item,index){
item.classList.add("selectk")
})
}else{
[...ospan].forEach(function(item,index){
item.classList.remove("selectk")
})
}
})
</script>

效果展示

本人小白,欢迎指正!!

原生js实现复选框的更多相关文章

  1. 原生js获取复选框的值

    ​​ obj = document.getElementsByName("dk_tj"); var longtxt = ""; for (k in obj) { ...

  2. html+css+js实现复选框全选与反选

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  3. js实现复选框的全选、全不选和反选

    js实现复选框的全选.全不选和反选 主要是用遍历的方法查找元素,然后通过改变checked的属性来选择,为true则是选中状态,为false则是未选状态 实现代码 <!DOCTYPE html& ...

  4. js input复选框选中父级同时子级也选中

    js实现复选框选中父级元素子级元素也选中,没有子级元素选中父级也不选中的效果 HTML <tr> <td> <label> <input name=" ...

  5. js操作复选框 复选框

    //复选框点击事件 function checkAll(){ let tp=$("#tp").val(); let all=$("input[name='id']&quo ...

  6. js实现复选框全选/全不选/反选

    js实现复选框全选/全不选/反选 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...

  7. js操作复选框

    js操作复选框 JavaScript 代码: //复选框全选 $(function () { $("#select_all").click(function () { $(&quo ...

  8. js实现复选框的全选、全不选、反选

    js中实现复选框的全选,全不选以及反选,分为两种情况: (1)选中“请选择”前面的复选框实现全选,不选中“请选择”前面的复选框实现全不选 <!DOCTYPE html PUBLIC " ...

  9. js 判断 复选框全选、全不选、反选、必选一个

    一个挺 使用的 js 代码片段,  判断  复选框全选.全不选.反选.必选一个 记录下, 搬来的 思路: 修改数据的 选中与否状态, 拿到所有的输入框,看是否有选中的状态 <html> & ...

随机推荐

  1. 读《Android电视机(机顶盒)初次开发的一些经验分享》后的笔记

    原文: http://blog.csdn.net/tanghongchang123/article/details/52982818 一.基本命令: 1.adb connect [ip] 2. adb ...

  2. CorelDRAWX8新功能摆脱传统工作模式

    最近,有一则好消息CorelDRAW X8特惠啦!功能不少价格却不高的CDR X8很快成了设计师们的新宠,三折之后你动心了么? 点击这里了解更多.. 那么CDR X8到底有何功能和亮点呢? 完全可自定 ...

  3. PHP Base64 加密 & 解密

    <?php 加密: $cany = 'getshell.top'; #定义要加密的字符串 echo base64_encode($cany); #输出加密后的字符串 解密: $cany = 'Z ...

  4. Flask框架函数

    title: flask学习笔记 subtitle: 1. flask框架函数 date: 2018-12-14 10:17:28 --- Flask学习 学习Miguel Grinberg的2017 ...

  5. java 常用API 时间 练习

    package com.orcal.demc01; import java.util.Date; public class Xuexi { public static void main(String ...

  6. mysql新建用户,修改权限

    (1)登录:mysql -u root -p (2)查看现有用户(mysql8.0.1) mysql> select host,user,authentication_string from m ...

  7. [USACO4.2] 草地排水 Drainage Ditches (最大流)

    题目背景 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没 ...

  8. Flask-SQLAlchemy中解决数据库连接1366报错

    报错信息:Warning: (1366, "Incorrect string value: '\\xD6\\xD0\\xB9\\xFA\\xB1\\xEA...' for column 'V ...

  9. JAVA学习之枚举

    1.新建一个枚举类 public enum Apple{ FUJI, PIPPIN, GRANNY_SMITH } 通过查看字节码,可以看到,枚举类的实现方式: 1)继承自java.lang.Enum ...

  10. Linux 获取帮助

    Linux中获取帮助的方法  方法:    COMMAND --help 或者 help COMMAND    whatis    man或info    本地帮助文档 /usr/share/doc/ ...