jQuery中获取元素的常用方式和DOM中获取元素的常用方式

这篇博客探讨了在DOM和jQuery中获取元素的常见方法。在DOM中,包括通过id、标签名、name属性、类样式和选择器来获取元素。而在jQuery中,涉及了id选择器、类选择器、标签选择器以及更复杂的交集、并集、层次和奇偶集选择器等获取元素的方式。

1.DOM中获取元素的常用方式

  • DOM中获取元素的方式
    • 根据id获取元素
    • document.getElementById(“id属性值”)
    • 根据标签名字获取元素
    • document.getElementsByTagName(“标签名字”)
    • 根据name属性获取元素
    • document.getElementsByName(“name属性值”)
    • 根据类样式的名字获取元素
    • document.getElementsByClassName(“类样式的名字”)
    • 根据选择器获取元素
    • document.querySelector(“选择器”);---->id选择器,类选择器,标签选择器
    • document.querySelectorAll(“选择器”)

2.jQuery中获取元素的常用方式

* jQuery中获取元素的方式
* $("选择器")---->jQuery对象
  • 通过id选择器获取元素
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../jquery-1.12.1.js"></script>
</head>
<body>
<input type="button" id="btn" value="点击">
<script>
    $(function () {
        $("#btn").click(function () {
            console.log($(this).val());
            $(this).val("I believe");
        });
    });
</script>
</body>
</html>
  • 通过类选择器获取元素
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .cls{
            width: 100px;
            height: 100px;
            background-color: blue ;
        }
    </style>
    <script>
        /*
        * .css("属性","值");---->设置某个属性的css样式,只适合单个属性的设置
        * */
    </script>
    <script src="../jquery-1.12.1.js"></script>
    <script>
        $(function () {
            $("#btn").click(function () {
                $(".cls").css("backgroundColor","green");
            });
        });
    </script>
</head>
<body>
<input type="button" id="btn" value="点击">
<div class="cls">雏菊</div>
<div class="cls">代表着</div>
<div class="cls">深藏心底的爱</div>
</body>
</html>
  • 通过标签选择器获取元素
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../jquery-1.12.1.js"></script>
    <script>
        /*
        * text()方法相当于DOM中的innerText属性
        * 对象.text()获得该对象的文本内容
        * 对象.text("文本内容")设置该对象的文本内容
        * 代码本身没有循环操作,jQuery内部帮助我进行循环操作---->隐式迭代
        * */
    </script>
    <script>
        $(function () {
            $("#btn").click(function () {
                $("p").text("深埋心底的爱");
            });
        });
    </script>
</head>
<body>
<input type="button" id="btn" value="点击">
<p>I believe</p>
<p>I believe</p>
<p>雏菊</p>
<p>深埋心底的爱</p>
</body>
</html>
  • 通过交集选择器获取元素
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../jquery-1.12.1.js"></script>
    <script>
        $(function () {
            $("#btn").click(function () {
                $("p#flower").css("backgroundColor","blue");
            });
        });
    </script>
</head>
<body>
<input type="button" id="btn" value="点击">
<div>
    <p>I believe</p>
    <p id="flower">雏菊</p>
    <p>深藏心底的爱</p>
</div>
</body>
</html>
  • 通过并集选择器获取元素
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../jquery-1.12.1.js"></script>
    <script>
        /*
        * 交集选择器:标签名.类样式的名字[#id值]
        * 并集选择器:选择器,选择器,选择器...
        * */
    </script>
    <script>
        $(function () {
            $("#btn").click(function () {
                $("div,#love,.flower").css("backgroundColor","green");
            });
        });
    </script>
</head>
<body>
<input type="button" id="btn" value="点击">
<div>雏菊</div>
<span id="love">深藏心底的爱</span>
<p class="flower">I believe</p>
</body>
</html>
  • 通过层次集选择器获取元素
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../jquery-1.12.1.js"></script>
    <script>
        $(function () {
            $("#btn").click(function () {
                //$("#dv span").css("backgroundColor","green");//获取的是div这个父级元素所有的子代span标签(包括直接和间接)
                $("#dv>span").css("backgroundColor","green");//获取的是div这个父级元素直接子代span标签
                //$("#dv~span").css("backgroundColor","green");//获取的是div这个父级元素后面所有的兄弟元素
                //$("#dv+span").css("backgroundColor","green");//获取的是div这个父级元素后面的直接兄弟元素
            });
        });
    </script>
</head>
<body>
<input type="button" id="btn" value="点击">
<br/>
<span>哈哈哈</span>
<div id="dv">
    <span>第一个span标签</span>
    <ul>
        <li>雏菊</li>
        <span>第二个span标签</span>
        <li>雏菊</li>
    </ul>
    <span>第三个span标签</span>
    <span>第四个span标签</span>
</div>
<span>哈哈哈</span>
<span>哈哈哈</span>
</body>
</html>
  • 通过奇偶集选择器获取元素
//效果-->隔行变色
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        ul {
            list-style-type: none;
            width: 200px;
            position: absolute;
            left: 500px;
        }

        ul li {
            margin-top: 10px;
            cursor: pointer;
            text-align: center;
            font-size: 20px;

        }
    </style>
    <script src="../jquery-1.12.1.js"></script>
    <script>
       $(function () {
           $("#btn").click(function () {
               $("#uu li:odd").css("backgroundColor","green");
               $("#uu li:even").css("backgroundColor","blue");
           });
       });
    </script>
</head>
<body>
<input type="button" value="隔行变色" id="btn"/>
<ul id="uu">
    <li>乔峰:降龙十八掌</li>
    <li>张无忌:乾坤大挪移</li>
    <li>段誉:鳞波微步</li>
    <li>丁棚:天外流星贱</li>
    <li>张三丰:太极掌</li>
    <li>段飞:极乐神功</li>
    <li>云飞扬:天馋功</li>
    <li>杨过:黯然销魂掌</li>
    <li>那谁谁:如来神掌</li>
    <li>孟星魂:流星蝴蝶剑</li>
    <li>楠哥:少女萌萌拳</li>
</ul>
</body>
</html>
  • 通过下标值获取元素
//效果-->根据鼠标的指向动态改变图片的显示
<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title></title>
  <style type="text/css">
    * {
      margin: 0;
      padding: 0;
      font-size: 12px;
    }

    ul {
      list-style: none;
    }

    a {
      text-decoration: none;
    }

    .wrapper {
      width: 298px;
      height: 248px;
      margin: 100px auto 0;
      border: 1px solid pink;
      overflow: hidden;
    }

    #left, #center, #right {
      float: left;
    }

    #left li, #right li {
      background: url(images/lili.jpg) repeat-x;
    }

    #left li a, #right li a {
      display: block;
      width: 48px;
      height: 27px;
      border-bottom: 1px solid pink;
      line-height: 27px;
      text-align: center;
      color: black;
    }

    #left li a:hover, #right li a:hover {
      background-image: url(images/abg.gif);
    }

    #center {
      border-left: 1px solid pink;
      border-right: 1px solid pink;
    }
  </style>
  <script src="jquery-1.12.2.js"></script>
  <script>
    /*
    * index()---->获取当前这个元素的索引
    * eq(索引值)---->获取对应的索引的元素
    * */
    $(function () {
      $("#left>li").mouseenter(function () {
        //先获取当前li的索引值
        var index=$(this).index();
        //先隐藏所有的li
        $("#center>li").hide();
        //显示当前的li
        $("#center>li:eq("+index+")").show();
      });
      $("#right>li").mouseenter(function () {
        //先获取当前li的索引值
        var index=$(this).index()+9;
        //先隐藏所有的li
        $("#center>li").hide();
        //显示当前的li
        $("#center>li:eq("+index+")").show();
      });
    });
  </script>
</head>
<body>
<div class="wrapper">
  <ul id="left">
    <li><a href="#">女靴</a></li>
    <li><a href="#">雪地靴</a></li>
    <li><a href="#">冬裙</a></li>
    <li><a href="#">呢大衣</a></li>
    <li><a href="#">毛衣</a></li>
    <li><a href="#">棉服</a></li>
    <li><a href="#">女裤</a></li>
    <li><a href="#">羽绒服</a></li>
    <li><a href="#">牛仔裤</a></li>
  </ul>
  <ul id="center">
    <li><a href="#"><img src="images/女靴.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/雪地靴.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/冬裙.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/呢大衣.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/毛衣.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/棉服.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/女裤.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/羽绒服.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/牛仔裤.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/女包.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/男包.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/登山鞋.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/皮带.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/围巾.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/皮衣.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/男毛衣.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/男棉服.jpg" width="200" height="250"/></a></li>
    <li><a href="#"><img src="images/男靴.jpg" width="200" height="250"/></a></li>
  </ul>
  <ul id="right">
    <li><a href="#">女包</a></li>
    <li><a href="#">男包</a></li>
    <li><a href="#">登山鞋</a></li>
    <li><a href="#">皮带</a></li>
    <li><a href="#">围巾</a></li>
    <li><a href="#">皮衣</a></li>
    <li><a href="#">男毛衣</a></li>
    <li><a href="#">男棉服</a></li>
    <li><a href="#">男靴</a></li>
  </ul>
</div>
</body>
</html>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值