• jQuery操作DOM


    结点操作:(DOM-core)

       <%--查找元素结点 --%>
        <script type="text/javascript">
            var $li = $("ul li:eq(1)");  //获取<ul> 中的第2个<li>结点
            var $li_txt = $li.text(); //获取第二个<li>结点的文本内容
            alert($li_txt);  //打印文本内容
        </script>
    
        <%--查找、添加属性 --%>
        <script type="text/javascript">
            var $p = $("p");  //获取<p>结点
            var $p_txt = $p.attr("title"); //获取p结点的title属性
            alert($p_txt); //打印属性值
    
            $("p").attr("id", "p1"); //设置单一属性
            $("p").attr("id":"p1","name":"test"); //设置多个属性
        </script>
    
         <%--删除属性 --%>
        <script type="text/javascript">
            $("p").removeAttr("title"); //删除属性
        </script>
    
        <%--创建元素结点 --%>
        <script type="text/javascript" >
            var $li_1 = $("<li></li>"); //创建第1个<li>结点 
            var $li_2 = $("<li/>"); //创建第2个<li>结点
            //添加到<ul>中,添到最后
            $("ul").append($li_1);
            $("ul").append($li_2);
            //链式写法
            $("ul").append($li_1).append($li_2);
        </script>
    
        <%--创建文本节点 --%>
        <script type="text/javascript">
            var $li_1 = $("<li>香蕉</li>");
            var $li_2 = $("<li>雪梨</li>");
    
            $("ul").append($li_1).append($li_2);
        </script>
    
        <%--创建属性结点 --%>
          <script type="text/javascript">
              var $li_1 = $("<li title='香蕉'>香蕉</li>");
              var $li_2 = $("<li title='雪梨'>雪梨</li>");
              $("ul").append($li_1).append($li_2);
        </script>
    
        <%--插入节点 --%>
        <p>我想说:</p>
        <script type="text/javascript">
            $("p").append("<b>你好</b>"); //<p>我想说:<b>你好</b></p>
            $("<b>你好</b>").appendTo("p"); //<p>我想说:<b>你好</b></p>
    
            $("p").prepend("<b>你好</b>"); //<p><b>你好</b>我想说:</p>
            $("<b>你好</b>").prepend("p"); //<p><b>你好</b>我想说:</p>
    
            $("p").after("<b>你好</b>"); //<p>我想说</p><b>你好</b>
            $("<b>你好</b>").insertAfter("p"); //<p>我想说</p><b>你好</b>
    
            $("p").before("<b>你好</b>"); //<b>你好</b><p>我想说</p>
            $("<b>你好</b>").insertBefore("p"); //<b>你好</b><p>我想说</p>
        </script>
    
        <%--删除结点 --%>
        <script type="text/javascript">
            var $li = $("ul li:eq(1)").remove(); //删除<ul>下的第2个<li>元素结点(包括后代元素),删除返回引用的值
            $("ul").append($li);  //把上一步删除的添加回来
    
            $("ul li").remove("li[title ==菠萝]"); //条件删除结点
    
            $("ul li:eq(1)").empty(); //清空元素(包括后代元素) 只剩下一个黑点
        </script>
    
        <%--复制结点 --%>
        <script type="text/javascript">
            $("ul li").click(function () {
                $(this).clone().appendTo("ul");  //赋值当前结点,并将其追加到<ul>元素中,克隆的结点不具有复制功能
            })
    
            $("ul li").click(function () {
                $(this).clone(true).appendTo("ul");//赋值当前结点,并将其追加到<ul>元素中,克隆的结点具有复制功能
            })
        </script>
    
        <%--替换结点 --%>
        <script type="text/javascript">
            $("p").replaceWith("strong") //将<p>结点替换成<strong>结点,替换后绑定的事件不存在
    
            $("strong").replaceAll("p"); //将<p>结点替换成<strong>结点,替换后绑定的事件不存在
        </script>
    
        <%--包裹结点 --%>
        <script type="text/javascript">
            $("strong").wrap("<b></b>"); //用<b>将<strong>标签包裹起来 结果是<b><strong>1</strong></b>、<b><strong>2</strong></b> 
                                         //单独包装每一个<strong>标签
    
            $("strong").wrapAll("<b></b>"); //用<b>将<strong>标签包裹起来 统一包裹<b><strong>1</strong> <strong>2</strong></b>
    
            $("strong").wrapInner("<b></b>") //用<b>将<strong>子内容包裹起来<strong><b>1</b></strong>
        </script>
    View Code

    样式操作

     <%--样式设置 --%>
        <script type="text/javascript">
            //追加样式
            $("#button").click(function () {
                $("p").addClass("another"); //给<p>标签追加"another"类
                /*多个CSS样式规则
                (1)如果一个元素添加了多个class值,那么就相当于合并了他们的样式
                (2)如果不同的class设定了同一个样式属性,则后者覆盖前者
                */
            })
    
            //移除样式
            $("button1").click(function () {
                $("p").removeClass("another"); //移除<p>标签样式为"another"的class
    
                $("p").removeClass("class1").removeClass("class2"); //移除多个class
                $("p").removeClass("class1 class2"); //同上
    
                $("p").removeClass(); //移除所有
            })
    
            //交替执行代码类似if..else
            $("p").toggle(function () {
                //显示元素
            }, function () { 
                //隐藏元素
            })
    
            //切换样式
            $("#button2").click(function () {
                $("p").toggleClass("another"); //<p>上有类名"another"则删除,没有则添加
            })
    
            //判断是否存在样式
            $("#button3").click(function () {
                $("p").hasClass("another"); //<p>上是否有class为another的样式
            })
        </script>
    View Code

    遍历结点

      <%--遍历结点 --%>
        <script type="text/javascript">
            $("p").children().length();  //获取<p>元素的子元素个数
            $("p").next();  //获取<p>元素的下一个兄弟元素的HTML代码(包括子元素)
            $("p").prev(); //获取<p>元素的上一个兄弟元素的HTML代码(包括子元素)
            $("p").siblings(); //获取<p>前后所有的兄弟元素的HTML代码(包括子元素)
        </script>
    View Code

    获取或设置HTML、文本的值(HTML-DOM)

     <%--获取或设置HTML、文本的值 --%>
        <script type="text/javascript">
            var $p_html = $("p").html(); //获取<p>元素的html代码 类似JS的innerHtml
            alert($p_html); //打印<p>元素的HTML代码 输出<p></p>下的所有文本,包括子元素
            $("p").html("<strong>设置P标签的HTML代码</strong>");
    
            var $p_text = $("p").text(); //获取<p>元素的文本内容 类似JS的innerText
            alert($p_text); //打印<p>元素的文本内容
            $("p").text("设置P标签的文本值");
    
            //id为address的文本框获得焦点则将文本框的值赋给$txt_value
            $("#address").focus(function () {   //focus等价JS的onfocus
                var $txt_value = $(this).val(); 
            })
    
            //id为address的文本框失去焦点则【请输入地址】赋给id为address的文本框
            $("#address").blur(function () {   //blur等价JS的onblur
                $(this).val("请输入地址");
            })
    
            //val()设置下拉列表,单选,多选的默认选中选中
            $(":checkbox").val(["check2", "check3"]); //check2和check3被选中
            $("#single").val("选择2号"); //下拉列表的”选择2号“默认显示 从后往前遍历 text或value任何一个符合都将选中
    
        </script>
    View Code

    样式设置(CSS-DOM)

     <%--CSS-DOM操作 --%>
        <script type="text/javascript">
            $("p").css("color"); //获取<p>元素的样式颜色
            $("p").css("color", "red"); //设置<p>元素的颜色为红色
            $("p").css({ "fontSize": "30px", backgroundColor: "#888888" });  //不加引号采用双峰命名法(推荐加引号)
    
            var $p_offset = $("p").offset();  //获取偏移量
            var $p_position = $("p").position(); //获取位置
            $("p").scrollLeft(); //滚动条距离左边的距离
            $("p").scrollTop(); //滚动条距离顶端的距离
        </script>
    View Code
  • 相关阅读:
    Ubuntu中的解压缩文件的方式 分类: Java 2014-07-20 22:33 1264人阅读 评论(0) 收藏
    Ubuntu下安装JDK图文解析 分类: Java 2014-07-20 21:28 4565人阅读 评论(3) 收藏
    数据结构和算法设计专题之---24点游戏(穷举法和递归法) 分类: Java 2014-07-18 21:26 789人阅读 评论(0) 收藏
    数据结构和算法设计专题之---单链表的逆序 分类: Java 2014-07-18 21:24 562人阅读 评论(1) 收藏
    Android中实现静态的默认安装和卸载应用 分类: Android 2014-07-02 22:43 5952人阅读 评论(19) 收藏
    Git的使用方法 分类: Java 2014-06-18 18:34 520人阅读 评论(0) 收藏
    J2EE学习篇之--JQuery技术详解 分类: JavaWeb 2014-06-18 11:35 1958人阅读 评论(1) 收藏
    MyEclipse6.0中使用aptana插件,添加jquery提示功能 分类: JavaWeb 2014-06-04 15:35 648人阅读 评论(0) 收藏
    Android中如何搭建一个WebServer 分类: Android 2014-06-01 14:44 8708人阅读 评论(3) 收藏
    J2EE学习篇之--Spring技术详解 分类: JavaWeb 2014-05-28 10:15 1109人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/zxd543/p/3510756.html
Copyright © 2020-2023  润新知