本文实现的效果为谷歌-历史记录页面中的checkbox选框效果, 效果描述如下:
点击一个选框,按住shift再点击其他选框,其中间的所有选框都被选中 / 取消选中
本文中的css与html框架来源于github, js部分为自己编写.
实现思路:
1. 在按下shift键, 且再此之前点击过其他的input选框时, 即可多行操作选框.
2. 所有选框的状态与最后一次点击的选框状态相同
3.我们需要获取整个过程中首次点击的input元素, 与最后一次点击的input元素, 并利用数组的indexOf方法操作它们中间的元素.
代码如下: (详细注释)
为了大家能清楚代码结构,我把html与css代码也上传了
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Hold Shift to Check Multiple Checkboxes</title>
</head>
<body>
<style>
html {
font-family: sans-serif;
background: