排他思想 +百度换肤案例

简单说就是使用for循环将一组标签注册事件的算法

  1. 点击之后五个按钮的背景颜色变化为粉红色的效果,这样子先使用一个for循环将所有的按钮绑定事件,点击之后将所有按钮的背景颜色改编为无色,单独将点击的背景颜色换成粉红色。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button>按钮1</button>
    <button>按钮2</button>
    <button>按钮3</button>
    <button>按钮4</button>
    <button>按钮5</button>
    <script>
        var btns = document.getElementsByTagName('button');
        for ( var i = 0 ; i < btns.length ; i ++ ) {
            btns[i].onclick = function ( ) {
                for ( var j = 0 ; j < btns.length ; j++ ) {
                    btns[j].style.backgroundColor = '' ;
                }
                this.style.backgroundColor = 'pink' ;
            }
        }
    </script>
</body>
</html>
  1. 百度换肤案例

要注意的是最后那个图片的地址,使用的是 ‘++’

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        body {
            background: url(images/1.jpg) no-repeat center top;
        }
        
        li {
            list-style: none;
        }
        
        .baidu {
            overflow: hidden;
            margin: 100px auto;
            background-color: #fff;
            width: 410px;
            padding-top: 3px;
        }
        
        .baidu li {
            float: left;
            margin: 0 1px;
            cursor: pointer;
        }
        
        .baidu img {
            width: 100px;
        }
    </style>
</head>

<body>
    <ul class="baidu">
        <li><img src="images/1.jpg"></li>
        <li><img src="images/2.jpg"></li>
        <li><img src="images/3.jpg"></li>
        <li><img src="images/4.jpg"></li>
    </ul>
    <script>
        var imgs = document.querySelector('.baidu').querySelectorAll('img') ;
        for ( var j = 0 ; j < imgs.length ; j++ ) {
            imgs[j].onclick = function () {
                // console.log(this.src);
                document.body.style.backgroundImage = 'url('+ this.src +')' ;
                
            }
        }
    </script>
</body>

</html>
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在Vue中使用思想,可以通过以下几种方式实现: 1. 使用v-if或v-show指令:您可以根据条件来决定显示或隐藏某个组件或元素。通过给多个组件或元素设置不同的条件,可以实现只显示其中一个的效果。例如: ```html <div v-if="selectedTab === 'tab1'">Tab 1 content</div> <div v-if="selectedTab === 'tab2'">Tab 2 content</div> <div v-if="selectedTab === 'tab3'">Tab 3 content</div> ``` 2. 使用计算属性:您可以根据条件返回特定的组件或元素。通过在计算属性中判断选中的标签,然后返回对应的内容,可以实现他性。例如: ```html <template> <div> <component :is="selectedTabComponent"></component> </div> </template> <script> export default { data() { return { selectedTab: 'tab1' }; }, computed: { selectedTabComponent() { if (this.selectedTab === 'tab1') { return 'Tab1Component'; } else if (this.selectedTab === 'tab2') { return 'Tab2Component'; } else if (this.selectedTab === 'tab3') { return 'Tab3Component'; } } } }; </script> ``` 3. 使用Vue Router:如果您的他性是在不同的路由之间切换,您可以使用Vue Router来实现。通过定义不同的路由,并使用`<router-view>`来渲染当前路由的组件,可以实现他性。例如: ```html <template> <div> <router-link to="/tab1">Tab 1</router-link> <router-link to="/tab2">Tab 2</router-link> <router-link to="/tab3">Tab 3</router-link> <router-view></router-view> </div> </template> <script> import Tab1Component from './Tab1Component.vue'; import Tab2Component from './Tab2Component.vue'; import Tab3Component from './Tab3Component.vue'; export default { components: { Tab1Component, Tab2Component, Tab3Component } }; </script> ``` 以上是几种在Vue中实现他性的方法。您可以根据具体情况选择适合您的方式来实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

花花叔叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值