1.复选框 实现 全选 反选 不选

  1. <button id="btn">全选</button>
  2. <button id="btn2">不选</button>
  3. <button id="reverse">反选</button>
  4. <div>
  5. <input type="checkbox">足球
  6. <input type="checkbox">蓝球
  7. <input type="checkbox">LOL
  8. <input type="checkbox">乒乓球
  9. </div>
  1. var btn = document.getElementById("btn")
  2. var btn2 = document.getElementById("btn2")
  3. var btn3 = document.getElementById("reverse")
  4. var inputs = document.getElementsByTagName("input")
  5. // 1.对 btn 执行点击事件
  6. btn.onclick = function(){
  7. // 2. 将所有的 input 的 checked 属性设置为 true
  8. for(var i=0;i<inputs.length;i++){
  9. inputs[i].checked = true;
  10. }
  11. }
  12. btn2.onclick = function(){
  13. for(var i=0;i<inputs.length;i++){
  14. inputs[i].checked = false;
  15. }
  16. }
  17. btn3.onclick = function(){
  18. for(var i=0;i<inputs.length;i++){
  19. inputs[i].checked = (inputs[i].checked)?false:true;
  20. }
  21. }

2. 隔行变色

  1. <ul>
  2. <li>1</li>
  3. <li>2</li>
  4. <li>3</li>
  5. <li>4</li>
  6. <li>5</li>
  7. </ul>
  1. var lis = document.getElementsByTagName("li")
  2. for(var i=0;i<lis.length;i++){
  3. if(i%2==0){
  4. lis[i].style.backgroundColor = "pink"
  5. }else{
  6. lis[i].style.backgroundColor = "skyblue"
  7. }
  8. }

3. 切换显示隐藏

  1. <div style="display: block;">
  2. hello
  3. </div>
  4. <button id="btn">toggle</button>
  1. var div = document.getElementsByTagName("div")[0]
  2. var btn = document.getElementById("btn")
  3. btn.onclick = function(){
  4. var d = div.style.display
  5. div.style.display =(d=="block")?"none":"block";
  6. }

4. 输入框字符限制

  1. <p>还可以输入<em id="em" style="color:red">0</em>/30</p>
  2. <textarea id="txt" cols="30" rows="10"></textarea>
  1. var txt = document.getElementById("txt")
  2. var em = document.getElementById("em")
  3. txt.onkeydown = function(){
  4. var length = this.value.length;
  5. if(length<=30){
  6. em.innerHTML = this.value.length;
  7. }else{
  8. alert("最多只能输入30个字符")
  9. }
  10. }

5. todoList

  1. <input type="text" id="txt">
  2. <ul id="app">
  3. </ul>
  1. var arr = []
  2. var txt = document.getElementById("txt")
  3. var app = document.getElementById("app")
  4. txt.onkeydown = function(event){
  5. if(event.keyCode == 13){
  6. /* indexOf arr.indexOf(value) 获取数组的下标 没有的返回-1 */
  7. if(arr.indexOf(this.value) == -1 && this.value!=""){
  8. arr.push(this.value)
  9. var li = document.createElement("li")
  10. li.innerHTML = this.value
  11. app.append(li)
  12. }
  13. console.log(arr);
  14. }
  15. }

6. 数据处理

  1. var obj = [
  2. {name:"zheng",age:18,skill:"vue"},
  3. {name:"zhang",age:17,skill:"js"},
  4. {name:"liu",age:20,skill:"html"}
  5. ]
  6. /* arr = [{name:"xx",skill:"xxx"},{name:"xx",skill:"xxx"}] */
  7. var arr = []
  8. for(var i=0;i<obj.length;i++){
  9. /* var name = obj[i].name;
  10. var skill = obj[i].skill; */
  11. var {name,skill} = obj[i]
  12. arr.push({
  13. /* name:name,skill:skill */
  14. name,
  15. skill
  16. })
  17. }
  18. console.log(arr);

7. tab栏切换

  1. .current{
  2. color: crimson;
  3. }
  4. .parent{
  5. width: 200px;
  6. height: 200px;
  7. border: 1px solid #666;
  8. position: relative;
  9. }
  10. .parent>div{
  11. width: 200px;
  12. height: 200px;
  13. position: absolute;
  14. }
  15. .html{
  16. background: coral;
  17. z-index: 100;
  18. }
  19. .css{
  20. background: skyblue;
  21. }
  1. <ul>
  2. <li class="current">html</li>
  3. <li>css</li>
  4. </ul>
  5. <div class="parent">
  6. <div class="html">html</div>
  7. <div class="css">css</div>
  8. </div>
  1. var lis = document.getElementsByTagName("li")
  2. var divs = document.querySelectorAll(".parent div")
  3. for(let i=0;i<lis.length;i++){
  4. lis[i].index = i; // 下标值
  5. lis[i].onclick = function(){
  6. // 1.给所有的li移除class="current"
  7. for(let i=0;i<lis.length;i++){
  8. lis[i].classList.remove("current")
  9. }
  10. // 2.给当前的 添加current类
  11. this.classList.add("current")
  12. // 3.让所有的div隐藏
  13. for(let i=0;i<divs.length;i++){
  14. divs[i].style.display="none"
  15. }
  16. // 4.让对应下标的div显示
  17. divs[this.index].style.display = "block"
  18. }
  19. // console.log(lis[i].index);
  20. }