美文网首页JavaScript前端
【前端案例】06 - 排他思想 + 页面换肤

【前端案例】06 - 排他思想 + 页面换肤

作者: itlu | 来源:发表于2020-12-01 11:18 被阅读0次

1. 排他思想

排他思想
  1. 当点击其中一个按钮的时候改变该按钮的背景颜色。并将其他按钮的背景颜色恢复。

  2. 需要利用一个排他思想:在设置选中的按钮之前需要将其他按钮的颜色恢复。

  3. 代码实现:

<body>
<button>按钮1</button>
<button>按钮2</button>
<button>按钮3</button>
<button>按钮4</button>
<button>按钮5</button>
<script>
  let btns = document.querySelectorAll('button');
  for (let i = 0; i < btns.length; i++) {
    btns[i].onclick = function () {
      // 先将所有按钮的背景颜色去掉
      for (let i = 0; i < btns.length; i++) {
        btns[i].style.backgroundColor = '';
      }
      this.style.backgroundColor = 'skyblue';
    }
  }
</script>
</body>

2. 页面换肤

页面换肤
  1. 为每一张图片循环设置点击事件,当点击某一张图片的时候修改body的背景图片backgroundImage。并将当前设置的图片缩览图使用不同颜色的边框区别。

  2. 这里利用了排他思想实现选中某张图片标注不同颜色的边框。

  3. 代码实现:

 * {
      margin: 0;
      padding: 0;
    }

    body {
      background: url(../images/1.jpg) no-repeat center top;
      background-size: cover;
      box-sizing: border-box;
    }

    ul {
      width: 1000px;
      list-style: none;
      padding: 0;
      margin: 100px auto;
    }

    li {
      float: left;
      margin: 20px;
      cursor: pointer;
      border: 5px solid #fff;
    }

    li img {
      /* 默认图片下面有一个空白缝隙需要转换为块级元素 */
      display: block;
      width: 200px;
    }
<body>
<ul class="baidu">
  <li><img src="../images/1.jpg" alt=""></li>
  <li><img src="../images/2.jpg" alt=""></li>
  <li><img src="../images/3.jpg" alt=""></li>
  <li><img src="../images/4.jpg" alt=""></li>
</ul>
<script>
  let img = document.querySelector('.baidu').querySelectorAll('img');
  let li = document.querySelector('.baidu').querySelectorAll('li');
  for (let i = 0; i < img.length; i++) {
    img[i].onclick = function () {
      document.body.style.backgroundImage = 'url(' + this.src + ')';
      for (let j = 0; j < li.length; j++) {
        li[j].style.borderColor = '#fff';
      }
      li[i].style.borderColor = 'pink';
    }
  }
</script>
</body>

相关文章

  • 【前端案例】06 - 排他思想 + 页面换肤

    1. 排他思想 当点击其中一个按钮的时候改变该按钮的背景颜色。并将其他按钮的背景颜色恢复。 需要利用一个排他思想:...

  • js4-排他思想 this 自定义属性 tab选项 数组/字符串

    排他思想 在同一属性上, 设置全部变量的这一属性清空, 当前响应事件的对象设置这一属性换肤进一步封装隔行变色+排他...

  • Web-API-02

    排他操作 排他思想 所有元素全部清除样式 给当前元素设置样式 案例:表格隔行变色 案例:全选 自定义属性操作 设置...

  • Springboot+Vue实现富文本发表文章功能

    案例功能效果图 前端编辑页面 文章列表页面 文章详情页面 环境介绍 前端:vue 后端:springboot jd...

  • JS案例9-排他思想

    效果演示: 源码:

  • 排他思想

    先清空所有的,然后单独设置当前; 基于 for 循环来实现的排他思想;

  • 排他思想

    排他 p {width: 100px;height: 100px;back...

  • 排他思想

    排他思想

  • 页面换肤

    原理是通过调用不同的样式表文件来实现不同皮肤的切换,并且需要将换好的皮肤存入cookie中,这样用户下次访问时,就...

  • 页面换肤

    场景需求 项目中一些页面需要换成另一种UI风格;并不是所有的页面都换UI展示; 思路 通过路由来判断此页面用哪一套...

网友评论

    本文标题:【前端案例】06 - 排他思想 + 页面换肤

    本文链接:https://www.haomeiwen.com/subject/roajwktx.html