zoukankan      html  css  js  c++  java
  • jQuery 选择器

    1. jQuery 选择器

    ​ 原生 JS 获取元素方式很多,很杂,而且兼容性情况不一致,因此 jQuery 给我们做了封装,使获取元素统一标准。

    1.1. 基础选择器

    $("选择器")   //  里面选择器直接写 CSS 选择器即可,但是要加引号 

    1.2. 层级选择器

    ​ 层级选择器最常用的两个分别为:后代选择器和子代选择器。

     基础选择器和层级选择器案例代码

    <body>
        <div>我是div</div>
        <div class="nav">我是nav div</div>
        <p>我是p</p>
        <ul>
            <li>我是ul 的</li>
            <li>我是ul 的</li>        
            <li>我是ul 的</li>
        </ul>
        <script>
            $(function() {
                console.log($(".nav"));
                console.log($("ul li"));
            })
        </script>
    </body>

    1.3. 筛选选择器

    ​ 筛选选择器,顾名思义就是在所有的选项中选择满足条件的进行筛选选择。常见如下 :

     案例代码

    <body>
        <ul>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
        </ul>
        <ol>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
            <li>多个里面筛选几个</li>
        </ol>
        <script>
            $(function() {
                $("ul li:first").css("color", "red");
                $("ul li:eq(2)").css("color", "blue");
                $("ol li:odd").css("color", "skyblue");
                $("ol li:even").css("color", "pink");
            })
        </script>
    </body>

    另:  jQuery中还有一些筛选方法,类似DOM中的通过一个节点找另外一个节点,父、子、兄以外有所加强。

     

    1.4 知识铺垫

    • jQuery 设置样式

    $('div').css('属性', '值')    
    • jQuery 里面的排他思想

    // 想要多选一的效果,排他思想:当前元素设置样式,其余的兄弟元素清除样式。
    $(this).css(“color”,”red”);
    $(this).siblings(). css(“color”,””);
    • 隐式迭代

    // 遍历内部 DOM 元素(伪数组形式存储)的过程就叫做隐式迭代。
    // 简单理解:给匹配到的所有元素进行循环遍历,执行相应的方法,而不用我们再进行循环,简化我们的操作,方便我们调用。
    $('div').hide();  // 页面中所有的div全部隐藏,不用循环操作
    • 链式编程

    // 链式编程是为了节省代码量,看起来更优雅。
    $(this).css('color', 'red').sibling().css('color', ''); 

    1.5 案例:淘宝服饰精品案例

    思路分析: 1.核心原理:鼠标经过左侧盒子某个小li,就让内容区盒子相对应图片显示,其余的图片隐藏。2.需要得到当前小li 的索引号,就可以显示对应索引号的图片3.jQuery 得到当前元素索引号 $(this).index()4.中间对应的图片,可以通过  eq(index) 方法去选择5.显示元素 show()   隐藏元素 hide()

    ​ 

    <script>
          $(function () {
            // 当鼠标经过左侧栏时相应的图片显示出来
            // 鼠标经过事件
            $("#left li").mouseover(function () {
              //得到当前小li的索引号
              var index = $(this).index();
              // 鼠标经过 相应图片显示
              $("#content div").eq(index).show();
              // 其他(兄弟图片)图片隐藏
              $("#content div").eq(index).siblings().hide();
            });
          });
        </script>
  • 相关阅读:
    前端面试题(08)
    虚拟的DOM与DOM diff
    前端面试题(07)
    前端面试题(06)
    前端面试题(05)
    前端面试题(04)
    canvas(02绘制图形)
    前端面试题03
    HTB-靶机-Irked
    HTB-靶机-RedCross
  • 原文地址:https://www.cnblogs.com/bky-/p/13775953.html
Copyright © 2011-2022 走看看