• JavaScript排他思想小例子之按钮的点击效果


    什么是排他思想简单来说就是干掉所有人,留下我自己,亦或者是说,所有人带着自己都干掉,然后自己出一个复活甲,接下来用代码进行演示

    目录

     首先:框架,这里我们先添加上5个按钮

     第二步:js代码获取元素

     第三步:添加点击事件

     第四步:修改 

     第五步:添加样式

     第六步:排他


     

     

    首先:框架,这里我们先添加上5个按钮

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <button>按钮button>
    9. <button>按钮button>
    10. <button>按钮button>
    11. <button>按钮button>
    12. <button>按钮button>
    13. body>
    14. <script>
    15. script>
    16. html>

    第二步:js代码获取元素

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <button>按钮button>
    9. <button>按钮button>
    10. <button>按钮button>
    11. <button>按钮button>
    12. <button>按钮button>
    13. body>
    14. <script>
    15. var btns = document.querySelectorAll('button')
    16. script>
    17. html>

     第三步:添加点击事件

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <button>按钮button>
    9. <button>按钮button>
    10. <button>按钮button>
    11. <button>按钮button>
    12. <button>按钮button>
    13. body>
    14. <script>
    15. var btns = document.querySelectorAll('button')
    16. btns.onclick = function(){
    17. }
    18. script>
    19. html>

    这里的话我们的目的是给每一个按钮添加一个点击事件,但queeryselectorall 有一个重点,他获取到的是一个伪数组,所以我们这样写是错的,要借助for循环来遍历出每一个元素

    第四步:修改 

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <button>按钮button>
    9. <button>按钮button>
    10. <button>按钮button>
    11. <button>按钮button>
    12. <button>按钮button>
    13. body>
    14. <script>
    15. var btns = document.querySelectorAll('button')
    16. for(var i=0;ilength;i++){
    17. btns[i].onclick = function(){
    18. }
    19. script>
    20. html>

     这样的话就成功给每一个按钮添加上了点击事件,接下来我们给这些按钮添加一个点击改变背景颜色的效果

    第五步:添加样式

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <button>按钮button>
    9. <button>按钮button>
    10. <button>按钮button>
    11. <button>按钮button>
    12. <button>按钮button>
    13. body>
    14. <script>
    15. var btns = document.querySelectorAll('button')
    16. for(var i=0;ilength;i++){
    17. btns[i].onclick = function(){
    18. this.style.backgroundColor = 'red'
    19. }
    20. }
    21. script>
    22. html>

     大家会看见我点击了2个按钮,但2个按钮却都红了,这显然不是我们想要的效果,所以我们要用到排他思想来写

    第六步:排他

             排他思想简单来说就是干掉所有人,留下我自己,亦或者是说,所有人带着自己都干掉,然后自己出一个复活甲,一定要记住顺序不能颠倒,首先清除所有样式,然后在设置自己。清除所有样式,那怎么才能把所有的样式清除呢,所以这里又要借助for循环遍历给每一个元素清除样式

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <button>按钮button>
    9. <button>按钮button>
    10. <button>按钮button>
    11. <button>按钮button>
    12. <button>按钮button>
    13. body>
    14. <script>
    15. var btns = document.querySelectorAll('button')
    16. for(var i=0;ilength;i++){
    17. btns[i].onclick = function(){
    18. for(var i=0;ilength;i++){
    19. btns[i].style.backgroundColor = 'yellow'
    20. }
    21. this.style.backgroundColor = 'red'
    22. }
    23. }
    24. script>
    25. html>

    这样的话就达到了我们想要的效果,这里为了方便观察,我给每一个元素添加了黄色背景

     

  • 相关阅读:
    手把手教你如何通过CC2531抓取Zigbee包,并解析加密Zigbee包
    Unity中使用WebP类型文件
    jdk版本与class文件格式major版本对应关系
    使用guacamole进行WEB远程桌面连接
    领域自适应的几个子问题
    数组3连问题
    Unity Inspector编辑器扩展,枚举显示中文,枚举值自定义显示内容
    JS 拖拽事件
    进程,线程切换
    【SpringCloud Alibaba -- Nacos】Linux 搭建 Nacos 集群
  • 原文地址:https://blog.csdn.net/tea_tea_/article/details/126471811