jQuery 选择器笔记

    jquery基础选择器

    $('选择器') 基本上与css选择器相同

    demo
    $('ul li')
    $('.nav')
    $('#box')
 

 隐试迭代

    遍历内部DOM元素的过程就叫做隐试迭代
    <div>第一个</div>
    <div>第一个</div>
    <div>第一个</div>
    <div>第一个</div>
    <script>
        $(function () {
            // 就是把匹配的元素内部循环,给每一个元素添加css样式
            $('div').css('background', 'pink')
        })
    </script>
<ul>
        <li>第一个</li>
        <li>第一个</li>
        <li>第一个</li>
        <li>第一个</li>
        <li>第一个</li>
        <li>第一个</li>
    </ul>
    <script>
        $(function () {
            $('ul li:first').css('color', 'red') //筛选出第一个
            $('ul li:eq(2)').css('color', 'blue') //筛选出索引号为2的
            $('ul li:odd').css('color', 'green') //筛选出所有索引号是奇数的
            $('ul li:even').css('color', 'black') //筛选出所有索引号是偶数的
        })
    </script>

  <!-- jquery筛选方法 -->

    <!-- 父级孩子 -->

 parent()返回的是最近一级的父级元素
    children()返回的是最近的子代元素
    find()返回父级下面所有的子元素
 <div class="grandfa">
        爷爷
        <div class="father">
            父亲
            <div class="son">
                儿子
            </div>
        </div>
    </div>
  $(function () {
            console.log($('.son').parent());
            console.log($('.grandfa').children());
            console.log($('.grandfa').find('.father').css('color', 'red'));
        })

 

 

  <!-- 下拉菜单 -->

 <ul class="nav">
        <li>
            <a href="#">微博</a>
            <ul>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
            </ul>
        </li>
        <li>
            <a href="#">微博</a>
            <ul>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
            </ul>
        </li>
        <li>
            <a href="#">微博</a>
            <ul>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
            </ul>
        </li>
        <li>
            <a href="#">微博</a>
            <ul>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
                <li>
                    <a href="#">评论</a>
                </li>
            </ul>
        </li>
    </ul>
  $(function () {
            // 鼠标经过
            $('.nav>li').mouseover(function () {
                $(this).children('ul').show()
            })
            // 鼠标离开
            $('.nav>li').mouseout(function () {
                $(this).children('ul').hide()
            })
        })

 <!-- 兄弟元素 -->

    siblings()查找兄弟节点 不包括自己本身
    eq(index) 通过索引号查找 推荐使用这种方法
    hasclass(class) 判断是否有某个类名
<ol>
        <li>第一个</li>
        <li>第一个</li>
        <li>第一个</li>
        <li>第一个</li>
        <list class="item">第一个</list>
    </ol>
  $(function () {
            $('ol .item').siblings('li').css('color', 'red')
            $('ol li:eq(2)').css('color', 'blue')
            $('ol li').eq(3).css('color', 'pink') //推荐使用
            console.log($('ol:last').hasClass('item'));
        })

    jQuery排他思想

  <button>点击</button>
    <button>点击</button>
    <button>点击</button>
    <button>点击</button>
    <button>点击</button>
  $(function () {
            // 给所有按钮绑定点击事件
            $('button').click(function () {
                // 当前的元素添加背景颜色
                $(this).css('background', 'pink')
                // 其他的兄弟清除背景颜色
                $(this).siblings('button').css('background', '')
            })
        })

 <!-- tab切换 -->

 <div class="box">
        <div class="btn">
            <ul id="left">
                <li><button>发卡</button></li>
                <li><button>手表</button></li>
                <li><button>鼠标</button></li>
                <li><button>体重秤</button></li>
                <li><button>鞋子</button></li>
            </ul>
        </div>
        <div class="pic">
            <div>
                <a href="#"><img src="../imges/fq.jpg" alt=""></a>
            </div>
            <div>
                <a href="#"><img src="../imges/sb.jpg" alt=""></a>
            </div>
            <div>
                <a href="#"><img src="../imges/sb2.jpg" alt=""></a>
            </div>
            <div>
                <a href="#"><img src="../imges/tzc.jpg" alt=""></a>
            </div>
            <div>
                <a href="#"><img src="../imges/xz.jpg" alt=""></a>
            </div>
        </div>
    </div>
  $(function () {
            $('#left li').click(function () {
                // 获取按钮的索引号
                var index = $(this).index();
                // 让右侧的盒子得到相应的索引号
                $('.pic div').eq(index).show();
                // 让其他的兄弟隐藏起来
                $('.pic div').eq(index).siblings().hide()
            })
        })

posted @ 2020-04-21 10:50  徐12  阅读(173)  评论(0编辑  收藏  举报