首页 > 其他分享 >day31-JQuery04

day31-JQuery04

时间:2022-12-04 21:44:17浏览次数:45  
标签:function 元素 同辈 day31 second JQuery04 alert div

JQuery04

6.jQuery的DOM操作02

6.9常用遍历节点方法

  1. 取得匹配元素的所有子元素组成的集合:children(),该方法只考虑子元素而不考虑任何后代元素

  2. 取得匹配元素后面的同辈元素的集合:next()/nextAll()

    如果是next方法,就是拿到指定元素后面的一个元素,如果是nextAll,就是后面所有的元素。下面同理

  3. 取得匹配元素前面的同辈元素的集合:prev()/prevAll()

  4. 取得匹配元素前后所有的同辈元素的集合:siblings()

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

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

应用实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>常用遍历节点方法</title>
    <style type="text/css">
        div, span {
            width: 140px;
            height: 60px;
            margin: 20px;
            background: #9999CC;
            border: #000 1px solid;
            float: left;
            font-size: 17px;
            font-family: Roman;
        }
    </style>
    <script type="text/javascript" src="../script/jquery-3.6.1.min.js"></script>
    <script type="text/javascript">
        $(function () {
            //查找所有子元素 (class为one的div的)
            $("#b1").click(function () {
                $("div.one").children().each(function () {
                    $(this).css("background", "#f14343")
                    // alert("子div的内容是= " + $(this).text())
                })
                //指定获取到第二个子元素
                // alert("第二个子元素= "+$("div.one").children().eq(1).text())
            })

            //获取后面的同辈元素 (class为one的div的)
            $("#b2").click(function () {
                //1.$("div.one"):选择class为one的div
                //2.nextAll():获取指定元素后面的所有同辈元素
                //3.filter("div"):过滤,得到指定标签的元素
                //4.each 遍历
                $("div.one").nextAll().filter("div").each(function () {
                    $(this).css("background", "#f14343")
                    // alert("后面的同辈div= " + $(this).text());
                })
                //如果我们希望得到后面同辈元素的第几个,可以用eq
                //获取到后面同辈div元素的第二个
                //alert("后面同辈元素的第二个= "+$("div.one").nextAll().filter("div").eq(1).text())//aaaaaaa

                //如果我们希望得到的是指定元素紧邻的后一个同辈元素,用next()
                // alert($("div.one").next().text())
            })

            //获取前面的同辈元素 (class 为 one 的 div 的)
            $("#b3").click(function () {
                $("div.one").prevAll().filter("div").each(function () {
                    $(this).css("background", "#f14343")
                    // alert("获取前面的同辈元素是= " + $(this).text())
                })
                //获取到前面同辈div元素的第1个
                // alert("前面同辈元素的第个= "+$("div.one").prevAll().filter("div").eq(0).text())//ccccccc

                //如果我们希望得到的是指定元素紧邻的前一个同辈元素,用prev()
                // alert($("div.one").prev().text())
            })

            //获取所有的同辈元素 (class 为 one 的 div 的)
            $("#b4").click(function () {
                $("div.one").siblings().filter("div").each(function () {
                    $(this).css("background", "#f14343")
                    // alert("获取所有的同辈元素是= " + $(this).text())
                })
            })
        })
    </script>
</head>
<body>
<input type="button" value="查找所有子元素 (class 为 one 的 div 的)" id="b1"/><br/><br/>
<input type="button" value="获取后面的同辈元素 (class 为 one 的 div 的)" id="b2"/><br/><br/>
<input type="button" value="获取前面的同辈元素 (class 为 one 的 div 的)" id="b3"/><br/><br/>
<input type="button" value="获取所有的同辈元素 (class 为 one 的 div 的)" id="b4"/>
<hr/>
<div>
    ccccccc
</div>
<div class="one">
    <div id="one">
        XXXXXXXXX one
    </div>
    <div id="two">
        XXXXXXXXX two
    </div>
    <div id="three">
        XXXXXXXXX three
    </div>
    <div id="four">
        XXXXXXXXX four
    </div>
</div>
<div>
    tttttttttt
</div>
<div>
    aaaaaaa
</div>
<div>bbbbbb</div>
</body>
</html>

6.10CSS-DOM操作

  1. 获取和设置元素的样式属性: css()

  2. 获取和设置元素透明度: opacity 属性

  3. 获取和设置元素高度, 宽度: height(), width()

    在设置值时, 若只传递数字, 则默认单位是px。如需要使用其他单位则需传递一个字符串, 例如$("p:first").height("2em");

  4. 获取元素在当前视窗中的相对位移: offset(). 其返回对象包含了两个属性: top, left. 该方法只对可见元素有效

应用实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>css-dom操作</title>
    <script type="text/javascript" src="../script/jquery-3.6.1.min.js"></script>
    <script type="text/javascript">
        $(function () {
            $("#b1").click(function () {
                var width = $("img").width();
                var height = $("img").height();
                alert("width= " + width + " height= " + height)
                //offset的使用
                var offset = $("img").offset();
                alert("img 的 top = " + offset.top)
                alert("img 的 left = " + offset.left)
            })
        })
    </script>
</head>
<body>
<br/>
<br/>
Hello,World!! &nbsp;<img src="../img/1.jpg" width="300" height="170"/>
<button id="b1" type="button">获取图片信息</button>
</body>
</html>

7.多选框应用-练习

image-20221204201653643
  1. 点击->把左边选中的移动到右边

  2. 点击==> 把左边全部移动到右边

  3. 双击左边或者右边的某个选项,将其自动移动到另外一边

应用实例

思路:(1) 绑定事件 (2) 选择对应的对象 (3) 插入[内部插入]

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>多选框应用</title>
    <script type="text/javascript" src="../../script/jquery-3.6.1.min.js"></script>
    <script type="text/javascript">
        $(function () {
            //思路:(1) 绑定事件 (2) 选择对应的对象 (3) 插入[内部插入]

            // 全部移到右边
            //(1) 绑定事件
            $("#add_all").click(function () {
                //(2) 选择对应的对象
                //将第一个选择框中的所有子元素都移动到第二个选择框中
                $("#second").append($("#first > option"))
                //或者 $("#second").append($("#first").children())
            })

            // 选中的移到右边
            //(1) 绑定事件
            $("#add").click(function () {
                //(2) 选择对象
                //将第一个选择框选中的子元素,移动到第二个选择框中
                $("#first > option:selected").appendTo($("#second"))
            })

            // 双击移到右边-dblclick()
            $("#first > option").dblclick(function () {
                //选择对象--隐式传入this(dom)
                $(this).appendTo($("#second"))
            })

            // 全部移动左边-前面的反向操作
            $("#remove_all").click(function () {
                //将第二个选择框中的所有子元素都移动到第一个选择框中
                $("#first").append($("#second > option"))
                //或者 $("#first").append($("#second").children())
            })

            // 选中的移到左边
            $("#remove").click(function () {
                //层级选择器的箭头可以省略
                $("#second  option:selected").appendTo($("#first"))
            })

            // 双击移到左边
            $("#second").dblclick(function () {
                $("#second > option:selected").appendTo($("#first"))
            })

            //双击移到左边-方法二
            // $("#second > option").dblclick(function () {
            //     $(this).appendTo($("#first"))
            // })
        })
    </script>
</head>
<body>
<div style="border:1px ;margin:150px 0px 0px 450px; width:350px;height:260px; background-color:#eaeaea;">
    <table border="0" width="285" height="169" align="left" style="margin:20px 0px 0px 52px;">
        <tr>
            <td width="126">
                <!--multiple="multiple" 能同时选择多个
                size="10" 确定下拉选的长度
                -->
                <select name="first" size="10" multiple="multiple" class="td3" id="first">
                    <option value="选项 1">选项 1</option>
                    <option value="选项 2">选项 2</option>
                    <option value="选项 3">选项 3</option>
                    <option value="选项 4">选项 4</option>
                    <option value="选项 5">选项 5</option>
                    <option value="选项 6">选项 6</option>
                    <option value="选项 7">选项 7</option>
                    <option value="选项 8">选项 8</option>
                </select>
            </td>
            <td width="69" valign="middle">
                <input name="add" id="add" type="button" class="button" value="-->"/>
                <input name="add_all" id="add_all" type="button" class="button" value="==>"/>
                <input name="remove" id="remove" type="button" class="button" value="&lt;--"/>
                <input name="remove_all" id="remove_all" type="button" class="button" value="&lt;=="/>
            </td>
            <td width="127" align="left">
                <select name="second" size="10" multiple="multiple" class="td3" id="second">
                    <option value="选项 9">选项 9</option>
                </select>
            </td>
        </tr>
    </table>
</div>
</body>
</html>

标签:function,元素,同辈,day31,second,JQuery04,alert,div
From: https://www.cnblogs.com/liyuelian/p/16950899.html

相关文章

  • 代码随想录Day31
    LeetCode700.二叉搜索树中的搜索给定二叉搜索树(BST)的根节点和一个值。你需要在BST中找到节点值等于给定值的节点。返回以该节点为根的子树。如果节点不存在,则返回NULL......
  • 进入python的世界_day31_网络编程—— 两种软件开发架构、网络编程之OSI七层协议
    一、软件开发架构1.第一种——C/S架构Client客户端<——————>Server服务端我们平时下载的软件包,基本都是客户端软件使用这个软件包就有一张令牌去进入店铺享受......
  • day31 1 tomcat介绍与创建web项目 & 2 继承HttpServlet类、配置webxml全局配置文件 &
    ServletJavaServlet是运行在Web服务器或应用服务器上的程序,作为客户端(Web浏览器或其他HTTP客户端)和服务端(HTTP服务器上的数据库或应用程序)之间的中间层。使用Servlet可......
  • 代码随想录day31 | 455.分发饼干 376. 摆动序列 53. 最大子序和
    455.分发饼干题目|文章思路满足能让最小胃口的孩子吃饱首先对饼干和胃口值都进行排序对饼干进行遍历,如果能满足当前孩子的胃口,那么就将结果加1。实现点击查看代......
  • 代码随想录day31
    455.分发饼干classSolution{public:intfindContentChildren(vector<int>&g,vector<int>&s){sort(g.begin(),g.end());sort(s.begin(),......
  • day31-线程基础01
    线程基础011.程序进程线程程序(program):是为完成的特定任务,用某种语言编写的一组指令的集合。简单来说,就是我们写的代码。进程:进程是指运行中的程序,比如我们使用......
  • Day31抽象类
    抽象类abstract修饰符可以用来修饰方法也可以修饰类,如果修饰方法,那么该方法就是抽象方法;如果修饰类,那么该类就是抽象类抽象类中可以没有抽象方法,但有抽象方法的类一定要......
  • 2022-08-18 day31 第一小组 王鸣赫
    目录MySQL常用函数聚合函数数值型函数字符串型函数日期和时间函数获取时间和日期时间戳和日期转换函数根据日期获取年月日的数值时间日期的计算加密函数流程控制函数数据库......