jQuery隐式迭代案例

本文深入探讨了jQuery中隐式迭代的概念,通过实例解析其工作原理,并与ES6的迭代器进行对比,揭示它们在HTML元素操作上的差异和应用场景。
摘要由CSDN通过智能技术生成
<script src="./jquery.min.js"></script>
<script>
    // tab切换的思路
    // 循环遍历,给所有的ul中li添加index属性
    // 当点击ul,li标签时,给所有的ul,li 和 ol li
    // 先去除active属性
    // 再给点击的ul,li标签添加 active 属性
    // 再给对应的ol,li标签,添加active 属性

    // JavaScript版本
    // const oUlli = document.querySelectorAll('ul>li');
    // const oOlli = document.querySelectorAll('ol>li');

    // oUlli.forEach(function(item , key){
    //     item.setAttribute('index', key);
    //     item.addEventListener('click' , function(){
    //         for(let i = 0 ; i <= oUlli.length-1 ; i++){
    //             oUlli[i].className = '';
    //             oOlli[i].className = '';
    //         }

    //         this.className = 'active';
    //         oOlli[this.getAttribute('index')].className = 'active';

    //     })
    // })

    
    // jQuery的版本
    // 在jQuery中,this,就是当前点击的对象
    // 标签对象.addClass('属性值')      给标签对象,添加class属性和属性值
    // 标签对象.removeClass('属性值')   删除标签对象中,添加class属性的指定属性值
    // 标签对象.index()  获取当前标签对象,在数组中的索引下标

    $('ul>li').click(function(){
        $(this)  // this 指向当前点击的标签 , 别忘了用()包裹,转化为jQuery形式
        .addClass('active') // 给当前点击的标签,添加class选择器和属性值
        .siblings().removeClass('active') // 删除当前标签,兄弟标签的,class选择器active属性
        .parent()  // 当前ul.li的父级,也就是ul
        .next()    // ul的下一个兄弟,ol
        .find('li')  // 找到ol下的li标签
        .eq($(this).index())  //  获取当前点击的ul,li标签在数组中的索引下标,把这个索引下标作为在ol中找到对应li标签的索引下标
        .addClass('active')  // 给标签添加class属性和active属性值
        .siblings()   // 找到当前ol,li标签的兄弟
        .removeClass('active') // 去除class属性的active属性值
    
    })

    // 总结:
    // 当前点击的li标签,添加样式
    // ulli的兄弟标签,删除样式
    // 找到ol中的所有li
    // 通过筛选器,获取索引下标与点击li标签索引下标相同的li
    // 给这个olli添加样式
    // 给ol中其他兄弟li删除样式


</script>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值