遍历一组标题,点击其他的,谁动态添加类名,默认第一个添加添加
时间: 2023-08-19 09:04:02 浏览: 44
好的,我理解您的问题是让我提供一个遍历一组标题的代码,其中点击其他标题时会动态添加类名,并且默认第一个标题会被添加类名。以下是一个示例代码,供您参考:
```javascript
// 获取所有标题元素
const titles = document.querySelectorAll('.title');
// 默认给第一个标题添加类名
titles[0].classList.add('active');
// 添加点击事件监听器
titles.forEach((title) => {
title.addEventListener('click', () => {
// 先移除所有标题的类名
titles.forEach((title) => {
title.classList.remove('active');
});
// 给当前点击的标题添加类名
title.classList.add('active');
});
});
```
在这个示例代码中,我们首先获取了所有标题元素,并且默认给第一个标题添加了 `active` 类名。然后我们遍历所有标题元素,并给它们添加了点击事件监听器。当用户点击某个标题时,我们会先移除所有标题的类名,然后给当前点击的标题添加 `active` 类名,从而实现动态添加类名的效果。
相关问题
点击tab动态添加类名
可以使用以下代码来实现点击tab时动态添加类名:
```javascript
$('.tab').click(function() {
$(this).addClass('current').siblings().removeClass('current');
});
```
这段代码使用了jQuery库,当点击.tab元素时,它会给当前元素添加current类,并移除其他兄弟元素的current类。这样就可以实现点击tab时动态添加类名。\[1\]
#### 引用[.reference_title]
- *1* [点击添加类名—js实现鼠标点击一个div删除另一个div的class中的其中一个类名,再点击一下又添加上](https://blog.csdn.net/weixin_44711440/article/details/105511661)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [vue动态添加类名方法(实现tab切换效果或导航选中效果)](https://blog.csdn.net/qq_24441205/article/details/128653670)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [vue Tab效果,动态添加类,移除兄弟类](https://blog.csdn.net/qq_34936893/article/details/125909571)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
vue 动态添加类名
在Vue中,你可以使用v-bind:class指令来动态添加类名。有多种方式可以实现动态添加类名的效果。
首先,你可以使用对象语法来动态绑定单个class。例如,你可以使用isActive变量来切换active类名的出现:
<div :class="{ active: isActive == true }"></div> [1]
其次,你可以在对象中传入更多属性来动态切换多个类名。同时,v-bind:class指令也可以与普通的class属性共存。例如:
Vue.component('my-component', { template: '<p class="foo bar">Hi</p>' })
<my-component class="baz boo"></my-component> [2]
此外,在v-for循环中动态添加类名也是常见的需求。为此,你可以按照以下步骤进行操作:
1. 在v-for循环的元素中,绑定一个key属性。
2. 在data中创建一个标识,例如isActive=0,这是为了初始化第一个标题为active。
3. 监听点击事件,触发一个方法,并传入点击元素的index,用来改变标识。
4. 在class属性中绑定条件表达式,判断当(index === 标识)时添加active类名。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [vue动态绑定类名的几种方法](https://blog.csdn.net/weixin_44251396/article/details/97390238)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [vue 添加动态类名的方法](https://blog.csdn.net/oLylia/article/details/126817688)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]