JavaWeb JQuery操作结点

简介: JavaWeb——JQuery内容补充 JQuery操作DOM。

目录

一、查找结点

       1.简介 :

       2.实例 :

二、创建结点

       1.创建结点介绍 :

       2.内部插入 :

           2.1 介绍 :

           2.2 实例

       3.外部插入 :

           3.1 介绍

           3.2 实例

三、结点的其他相关操作

       1.删除结点 :

       2.复制结点 :

       3.替换结点 :

       4.遍历结点 :


一、查找结点

       1.简介 :

       查找到所需要的元素之后, 可以调用 JQuery 对象的 attr() 方法来获取各种属性值。

       attr()方法可以用于设置或返回被选中元素的属性值。

       $(selector).attr(attribute)——返回被选中元素的属性值;

       $(selector).attr(attribute,value)——设置被选中元素的属性值。

       removeAttr()——删除指定元素的指定属性

       2.实例 :

               search.html代码如下 :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Search node</title>
    <script type="text/javascript" src="../../js/jquery-3.7.0.min.js"></script>
    <script type="text/javascript">
        $(function () {
            $("button[id='button01']").click(function () {
                $("img").attr("src", "../../image/3.jpg");
                $("#button01").hide();
                $("#button02").show();
            });
            $("button[id='button02']").click(function () {
                $("img").attr("src", "../../image/4.jpg");
                $("#button02").hide();
                $("#button01").show();
            });
        });
    </script>
</head>
<body>
    <img src="../../image/4.jpg" height="200px"/> <br/>
    <button id="button01">点我将粉色矢车菊变成蓝色矢车菊</button>
    <button id="button02" hidden="hidden">点我将蓝色矢车菊变成粉色矢车菊</button>
</body>
</html>

image.gif

               运行效果如下 : (GIF图)

image.gif编辑


二、创建结点

       1.创建结点介绍 :

       (1) 使用JQuery的工厂函数$() : $(HTML标签); 创建结点,会根据传入的HTML标记字符串创建一个JQuery对象并返回。

       (2) 动态地创建新元素结点不会被自动添加到文档中,需要手动地调用方法将其插入到文档中

       (3) 当创建单个元素时,需注意闭合标签使用标准的XHTML格式。eg : $("<p/>"); 或 $("<p></p>"); 。

       (4) 创建文本结点就是在创建元素结点时直接把文本内容写出来;创建属性结点也是在创建元素结点时一起创建

       2.内部插入 :

           2.1 介绍 :

       内部插入法的本质是在元素内插入内容,使插入的内容变成该元素的子元素或子结点。(调用的是JQuery对象的方法)

       常用方法如下——

       (1) append(content) : 向每个匹配元素的内部结尾处追加内容(eg : A.append(B),指在A的内部结尾处插入B)。

       (2) appendTo(content) : 将每个匹配到的元素追加到指定元素的内部结尾处(A.appendTo(B),指将A插入到B的内部结尾处)。

       (3) prepend(content) : 向每个匹配元素的内部开头处追加内容(eg : A.prepend(B),指在A的内部开头处插入B)。

       (4) prependTo(content) : 将每个匹配到的元素追加到指定元素的内部开头处(A.prependTo(B),指将A插入到B的内部开头处)。

           2.2 实例

               InnerSort.html代码如下 :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>内部排序演示</title>
    <style>
        div {
            background-color: lightcyan;
            width: 350px;
            height: 170px;
            border: 2px pink solid;
        }
        #littleDiv {
            background-color: lightseagreen;
            width: 125px;
            height: 50px;
            border: 2px purple solid;
        }
    </style>
    <script type="text/javascript" src="../../js/jquery-3.7.0.min.js"></script>
    <script>
        $(function () {
            $("#but01").click(function () {
                var $div = $("<div id=\"littleDiv\">内部结尾处</div>");
                $("#div01").append($div);
            });
            $("#but02").click(function () {
                var $div = $("<div id=\"littleDiv\">内部开头处</div>");
                $("#div02").prepend($div);
            });
            $("#but03").click(function () {
                var $div = $("<div id=\"littleDiv\">内部开头处</div>");
                $div.prependTo($("#div01"));
            });
            $("#but04").click(function () {
                var $div = $("<div id=\"littleDiv\">内部结尾处</div>");
                $div.appendTo($("#div02"));
            });
        });
    </script>
</head>
<body>
<div id="div01">
    这是第一个div(注意添加元素时在我之上还是之下)
</div>
<br/><br/>
<div id="div02">
    这是第二个div(注意添加元素时在我之上还是之下)
</div>
<br/><br/>
<input type="button" id="but01" value="点我,向第一个div内部结尾处追加一个小div"/> <br/>
<input type="button" id="but02" value="点我,向第二个div内部开头处追加一个小div"/> <br/>
<input type="button" id="but03" value="点我,将一个小div追加到第一个div的内部开头处"/> <br/>
<input type="button" id="but04" value="点我,将一个小div追加到第二个div的内部结尾处"/>
</body>
</html>

image.gif

               运行效果 : (如下GIF图)

image.gif编辑

       3.外部插入 :

           3.1 介绍

       外部插入法的本质是在元素外插入内容,使插入的内容变成该元素的兄弟结点。(调用的是JQuery对象的方法)

       常用方法如下——

       (1) after(content) : 在每个匹配元素外部结尾处插入内容(eg : A.after(B),指在A元素之后插入B元素,使B成为A的后兄弟结点)

       (2) insertAfter(content) : 将每个匹配到的元素插入到指定元素的外部结尾处。(eg : A.insertAfter(B),指将A对象插入到B对象的后面)

       (3) before(content) : 在每个匹配元素外部开头处插入内容(eg : A.before(B),指在A元素之前插入B元素,使B成为A的前兄弟结点)

       (4) insertBefore(content) : 将每个匹配到的元素插入到指定元素的外部开头处(eg : A.insertBefore(B),指将A对象插入到B对象的前面)。

           3.2 实例

               OuterSort.html代码如下 :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>外部排序演示</title>
    <script type="text/javascript" src="../../js/jquery-3.7.0.min.js"></script>
    <script type="text/javascript">
        $(function () {
            $("#but01").click(function () {
                $("#rock").after("<li id=\"ka\">卡斯兰娜</li>");
            });
            $("#but02").click(function () {
                $("#rock").before("<li id=\"sha\">沙尼亚特</li>");
            });
            $("#but03").click(function () {
                var $li_jia = $("<li id=\"jia\">路人甲</li>");
                $li_jia.insertAfter($("#shit"));
            });
            $("#but04").click(function () {
                var $li_yi = $("<li id=\"yi\">路人乙</li>");
                $li_yi.insertBefore($("#shit"));
            });
        })
    </script>
</head>
<body id="character">
<ul>
    <li id="wind" name="Barbatos">巴巴托斯</li>
    <li id="rock" name="Zhongli">摩拉克斯</li>
    <li id="light" name="Bool">巴尔</li>
    <li id="shit" name="Auto">阿波卡利斯</li>
</ul>
<button id="but01">点我,在摩拉克斯后面增加卡斯兰娜</button>
<br/><br/>
<button id="but02">点我,在摩拉克斯前面增加沙尼亚特</button>
<br/><br/>
<button id="but03">点我,将路人甲插入到阿波卡利斯之后</button>
<br/><br/>
<button id="but04">点我,将路人乙插入到阿波卡利斯之前</button>
</body>
</html>

image.gif

              运行效果(GIF图)

image.gif编辑


三、结点的其他相关操作

       1.删除结点 :

       (1)remove()——从DOM树中删除所有匹配的元素,传入的参数用于根据JQuery表达式来筛选元素,当某个结点使用remove()方法删除后,该结点所包含的所有后代结点也将被同时删除,该方法的返回值是一个指向已被删除的结点的引用。

       (2)empty()——清空当前结点,指清空元素中的所有后代结点(不包含属性结点)而当前元素本身仍然存在。

       2.复制结点 :

       (1)clone()——克隆匹配的DOM元素,返回值为克隆后的副本,但此时复制的新结点不具有任何行为(没有克隆事件)。

       (2)empty()——复制元素的同时也复制元素中的事件

       3.替换结点 :

       (1)replaceWith()——将所有匹配的元素都替换为指定的HTML元素或JQuery对象(eg : A.replaceWith(B),指,用B替换所有的A)。

       (2)replaceAll()——效果与replaceWith相反

       PS : 若被替换的元素上已经绑定了事件,那么元素被替换后,其原先绑定的事件会与原先的元素一起消失若用于替换的元素绑定的事件,则替换后,新的事件生效

       4.遍历结点 :

       常用遍历结点方法——  

       (1)children()——获取匹配元素的所有子元素组成的集合。(只考虑子元素,而不考虑其他后代元素)。

       (2)next() / nextAll()——获取匹配元素后面的同辈元素的集合(获取一个或所有)。

       (3)prev() / prevAll()——获取匹配元素前面的同辈元素的集合(获取一个或所有)。

       (4)siblings()——获取匹配元素前后所有的同辈元素的集合。

       (5)nextAll().eq(index)——获取指定的第几个元素。

       (6)nextAll().filter("tag")——对获取到的同辈元素进行过滤

目录
相关文章
|
2月前
|
JavaScript 前端开发
使用jQuery操作DOM元素
使用jQuery操作DOM元素
16 1
|
2月前
|
JavaScript
jQuery遍历div,判断是否为空,为空时执行某个操作
jQuery遍历div,判断是否为空,为空时执行某个操作
9 0
|
2月前
|
JavaScript 前端开发 索引
JQuery样式操作、click事件以及索引值-选项卡应用示例
JQuery样式操作、click事件以及索引值-选项卡应用示例
23 1
|
7月前
|
存储 JavaScript 前端开发
举例jQuery里的十五种操作
举例jQuery里的十五种操作
59 0
|
7月前
|
JavaScript 前端开发 API
jQuery的attr()方法和JavaScript的属性操作
jQuery的attr()方法和JavaScript的属性操作
44 0
N..
|
2月前
|
JavaScript 前端开发 容器
jQuery中的DOM操作
jQuery中的DOM操作
N..
14 1
|
2月前
|
前端开发 JavaScript Java
第四章使用jQuery操作DOM元素
第四章使用jQuery操作DOM元素
10 0
|
2月前
|
JavaScript
jQuery操作DOM元素案例
jQuery操作DOM元素案例
11 0
|
7月前
|
JavaScript 前端开发
前端基础 -JQuery之 对属性的操作
前端基础 -JQuery之 对属性的操作
26 0
|
4月前
|
JavaScript
jQuery -第3次课-DOM操作元素属性-样式等-附资料、作业
jQuery -第3次课-DOM操作元素属性-样式等-附资料、作业
28 0