js遍历修改多个style样式方法

1.普通方法

就是通过

对象.style.属性名=“属性值”

的方法来一个一个修改/添加css样式

 效果就是移入添加移出恢复正常

 

 弊端:虽然一样可以达到效果,但是如果要添加,修改很多个样式就非常麻烦所以使用循环遍历添加

方法2:循环对象添加属性值

 核心:定义一个对象来存储属性和属性值

通过for(var k in obj){}来遍历添加

注意:在这里遇到一个问题,就是要使用【】来添加属性值(直接.k拿不到)

因为.后面表示的是字符串 不能识别“k”这个属性名

使用【】表示里面是一个变量可以识别属性名

 这个是一个大佬帮我解决的@晨

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 可以使用jQuery或原生JavaScript编写多个方法选项卡代码。以下是一个使用原生JavaScript编写的示例: HTML代码: ``` <div class="tab"> <button class="tablinks" onclick="openTab(event, 'tab1')">选项卡1</button> <button class="tablinks" onclick="openTab(event, 'tab2')">选项卡2</button> <button class="tablinks" onclick="openTab(event, 'tab3')">选项卡3</button> </div> <div id="tab1" class="tabcontent"> <h3>选项卡1</h3> <p>这是选项卡1的内容。</p> </div> <div id="tab2" class="tabcontent"> <h3>选项卡2</h3> <p>这是选项卡2的内容。</p> </div> <div id="tab3" class="tabcontent"> <h3>选项卡3</h3> <p>这是选项卡3的内容。</p> </div> ``` JavaScript代码: ``` function openTab(evt, tabName) { var i, tabcontent, tablinks; tabcontent = document.getElementsByClassName("tabcontent"); for (i = 0; i < tabcontent.length; i++) { tabcontent[i].style.display = "none"; } tablinks = document.getElementsByClassName("tablinks"); for (i = 0; i < tablinks.length; i++) { tablinks[i].className = tablinks[i].className.replace(" active", ""); } document.getElementById(tabName).style.display = "block"; evt.currentTarget.className += " active"; } ``` CSS代码: ``` .tab { overflow: hidden; border: 1px solid #ccc; background-color: #f1f1f1; } .tab button { background-color: inherit; float: left; border: none; outline: none; cursor: pointer; padding: 14px 16px; transition: 0.3s; } .tab button:hover { background-color: #ddd; } .tab button.active { background-color: #ccc; } .tabcontent { display: none; padding: 6px 12px; border: 1px solid #ccc; border-top: none; } ``` ### 回答2: 选项卡是网页中常见的一个功能,通过点击不同的标签来切换显示不同的内容。在JavaScript中,我们可以通过编写多个方法来实现选项卡功能。 首先,我们需要给每个选项卡添加一个点击事件,当用户点击标签时,会触发相应的方法。这里我们可以使用addEventListener方法来为每个选项卡绑定点击事件。 然后,我们可以编写一个名为showTab的方法来实现显示选项卡内容的功能。在showTab方法中,我们可以通过获取选项卡的索引来确定哪个选项卡被点击,然后将该选项卡内容显示出来,同时隐藏其他选项卡的内容。 另外,我们还可以编写一个名为initTabs的方法来初始化选项卡。在initTabs方法中,我们可以使用querySelectorAll方法来获取所有的选项卡和对应的内容。然后遍历每个选项卡,为每个选项卡添加点击事件,同时将初始状态的选项卡内容隐藏起来。 最后,我们需要在页面加载完成后调用initTabs方法,以初始化选项卡。 下面是一个简单的示例代码: ```javascript // 显示选项卡内容 function showTab(index) { var tabs = document.querySelectorAll('.tab'); var contents = document.querySelectorAll('.content'); // 隐藏所有选项卡内容 for (var i = 0; i < contents.length; i++) { contents[i].style.display = 'none'; } // 显示当前选项卡内容 contents[index].style.display = 'block'; } // 初始化选项卡 function initTabs() { var tabs = document.querySelectorAll('.tab'); // 为每个选项卡添加点击事件 for (var i = 0; i < tabs.length; i++) { (function(index) { tabs[index].addEventListener('click', function() { showTab(index); }); })(i); } // 隐藏初始状态的选项卡内容 var contents = document.querySelectorAll('.content'); for (var i = 1; i < contents.length; i++) { contents[i].style.display = 'none'; } } // 页面加载完成后初始化选项卡 window.addEventListener('load', function() { initTabs(); }); ``` 以上是使用JavaScript编写多个方法实现选项卡功能的示例代码。 ### 回答3: JavaScript编写多个方法选项卡代码可以使用以下步骤: 1. 首先,创建一个HTML结构来组织选项卡内容。例如,可以使用`<ul>`和`<li>`来创建选项卡标签,使用`<div>`来创建选项卡内容。 2. 在JavaScript中,通过获取HTML元素来选择选项卡标签和内容。可以使用`document.querySelector()`或`document.querySelectorAll()`来获取元素。 3. 给选项卡标签添加事件监听器,当用户点击标签时,触发相应的事件处理程序。可以使用`addEventListener()`方法来添加事件监听器。 4. 在事件处理程序中,切换选项卡内容的显示。可以通过为选项卡标签和内容添加类名,然后使用CSS样式来控制显示或隐藏。 以下是一个示例代码: HTML代码: ```html <ul id="tabs"> <li class="tab">选项卡1</li> <li class="tab">选项卡2</li> <li class="tab">选项卡3</li> </ul> <div id="tab-content"> <div class="content">选项卡1的内容</div> <div class="content">选项卡2的内容</div> <div class="content">选项卡3的内容</div> </div> ``` JavaScript代码: ```javascript // 获取选项卡标签和内容 const tabs = document.querySelectorAll('.tab'); const contents = document.querySelectorAll('.content'); // 为选项卡标签添加事件监听器 tabs.forEach((tab, index) => { tab.addEventListener('click', () => { // 切换选项卡的激活状态 tabs.forEach((tab) => tab.classList.remove('active')); tab.classList.add('active'); // 切换选项卡内容的显示 contents.forEach((content) => content.classList.remove('active')); contents[index].classList.add('active'); }); }); ``` 上述代码中,`querySelectorAll()`方法用于获取选项卡标签和内容的HTML元素。`forEach()`方法用于遍历选项卡标签,并为每个标签添加点击事件监听器。当用户点击标签时,通过切换类名来实现选项卡的切换显示。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

巨蟹座守护骑士

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

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

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

打赏作者

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

抵扣说明:

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

余额充值