zoukankan      html  css  js  c++  java
  • jQuery的dom操作

    三 dom操作
     1.查询
      利用选择器找到节点后,访问节点的html内容,节点的text内容,
      节点的值,节点的属性值
      html():访问节点的html内容,相当于dom节点的innerHTML属性
      text():访问节点text的内容,相当于innerText属性
      val():访问节点的值,如下拉列表的值
      attr():输出或者设置节点的属性值
      
      例子:
    <html>
    <!-- 查询 -->
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    <script type="text/javascript"
    src="../js/jquery-1.4.3.js"></script>
    <script type="text/javascript">
     function f1(){
      //alert($('#d1').html());
      //alert($('#d1').text());
      
      $('#d1').html('hello java');
     }
     
     function f2(){
      //alert($(':text').val());
      $(':text').val('zs');
     }
     
     function f3(){
      //alert($('#d1').attr('id'));
      $('#d1').attr('style',
      'font-size:60px;color:red;');
     }
    </script>
    </head>
    <body style="font-size:30px">
     <div id="d1"><span>hello jQuery</span></div>
     username:<input name="username"/><br/>
     <input type="button" value="查询"
     onclick="f3();"/>
     
     
    </body>
    </html>


     2.创建
      $(html);


     3.插入节点
      append();
      向每个匹配的元素内部追加内容
      prepend()
      向每个匹配的元素内部前置内容
      after()
      在每个匹配的元素之后插入内容
      before()
      在每个匹配的元素之前插入内容 
      
      例子
      
      例子:
    <html>
    <!-- 创建节点和添加节点 -->
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    <script type="text/javascript"
    src="../js/jquery-1.4.3.js"></script>
    <script type="text/javascript">
     function f1(){
      var $obj = $('<div>兴趣是第一位的</div>');
      $('body').append($obj);
     }
     
     function f2(){
      $('body').append('<div>兴趣是第一位的</div>');
     }
     
     function f3(){
      var $obj = $("<div></div>");
      $obj.html('其次是多练习');
      $('body').append($obj);
     }
     
     function f4(){
      $('ul').append('<li>newItem</li>');
     }
     
     function f5(){
      $('body').prepend('<div>多看看优秀的代码</div>');
     }
     
     function f6(){
      $('a').after('<p>hello java</p>');
     }
    </script>
    </head>
    <body style="font-size:30px;">
     <a href="javascript:;"
     onclick="f6();">如何才能学好java?</a>
     <br/>
     <ul>
      <li>item1</li>
      <li>item2</li>
      <li>item3</li>
     </ul>
     <ul>
      <li>item11</li>
      <li>item22</li>
      <li>item33</li>
     </ul>
    </body>
    </html>

     
     4.删除节点
      remove()
      remove(selector)
      empty()  清空节点
      
    例子:
    <html>
    <!-- 删除节点 -->
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    <script type="text/javascript"
    src="../js/jquery-1.4.3.js"></script>
    <script type="text/javascript">
     function f1(){
      $('ul li:eq(1)').remove();
     }
     
     function f2(){
      $('ul li:eq(1)').empty();
     }
     
     function f3(){
      $('ul li').remove('#l2');
     }
    </script>
    </head>
    <body style="font-size:30px;">
     <ul>
      <li>item1</li>
      <li id="l2">item2</li>
      <li>item3</li>
     </ul>
     <input type="button" value="删除节点"
     onclick="f3();"/>
    </body>
    </html>

     5.复制节点
      clone()  复制(不复制行为)
      clone(true); 使复制的节点也具有行为(绑定在该节点上的事件)
      
      如何绑定事件在节点上
      1)//将事件处理代码绑订到dom节点之上。
      var obj = document.getElementById('b1');
      obj.onclick=f1;
      2)
      <!-- 将事件处理代码绑订到html标记之上 -->
      <input type="button" value="ClickMe" id="b1"
      onclick="f1();"/>
      
    复制例子:
    <html>
    <!-- clone -->
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    <script type="text/javascript"
    src="../js/jquery-1.4.3.js"></script>
    <script type="text/javascript">
     /*
      可以将这儿的代码放到.js文件里,然后引入
      该文件,这样做,可以将js代码与html代码完全
      分离,方便代码的维护。
     */
     $(function(){
      /*
      $('#b1').click(function(){
       var $obj = $('ul li:eq(2)').clone();
       $('ul').append($obj);
      });
      */
      $('ul li:eq(2)').click(function(){
       alert('hello');
      });
      
      $('#b1').click(function(){
       var $obj = $('ul li:eq(2)').clone(true);
       $('ul').append($obj);
      });
     });
    </script>
    </head>
    <body style="font-size:30px;">
     <ul>
      <li>item1</li>
      <li>item2</li>
      <li>item3</li>
     </ul>
     <input type="button" value="clone方法" id="b1"/>
    </body>
    </html>

     6.属性操作
      attr('');   读取属性
      设置:attr('','')
      或者一次设置多个attr({"":"","":""});
      删除:removeAttr('')
      
     例子:
     <html>
    <!-- 属性操作 -->
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    <style>
     .s1{
      font-size:60px;
     }
    </style>
    <script type="text/javascript"
    src="../js/jquery-1.4.3.js"></script>
    <script type="text/javascript">
     $(function(){
      $('#b1').click(function(){
       //alert($('#d1').attr('id'));
       //$('#d1').attr('class','s1');
       
       //$('#d1').attr({'class':'s1',
       //'style':'color:red;font-style:italic;'});
       $('#d1').attr('class','s1').attr('style','color:blue');
      });
     });
    </script>
    </head>
    <body style="font-size:30px;">
     <div id="d1">hello</div>
     <input type="button" value="属性操作" id="b1"/>
    </body>
    </html>

     7.样式操作
      attr("calss","") 获取和设置
      addClass('')  追加
      removeClass('') 移除
      或者removeClass('s1 s2')
      或者removeClass()  会删除所有样式
      toggleClass()    切换样式
      hasClass('')     是否有某个样式
      css('')      读取设置css('','')或者css({"":"","":""})//设置多个样式
      
     例子:
     <html>
    <!-- jquery中的样式如何修改 -->
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    <style>
     .s1{
      font-size:80px;
     }
     .s2{
      color:blue;
     }
     .s3{
      font-style:italic;
     }
    </style>
    <script type="text/javascript" src="../js/jquery-1.4.3.js"></script>
    <script type="text/javascript">
     $(function(){
      /*
      $('#b1').click(function(){
       $('#d1').attr('class','s1');
      });
      */
      $('#b1').click(function(){
       //$('#d1').addClass('s2 s3');
       //$('#d1').removeClass('s1');
       //$('#d1').toggleClass('s1');
       //alert($('#d1').hasClass('s1'));
       //$('#d1').css('font-style','italic')
       //.css('color','red');
       $('#d1').css({'font-style':'italic','color':'blue'});
      });
     });
    </script>
    </head>
    <body style="font-size:30px">
     <div id="d1" class="s1">hello</div>
     <input type="button" value="样式操作" id="b1"/>
    </body>
    </html>

     8.遍历节点
      children()   只考虑子元素,不考虑其他后代元素.
      next()
      prev()
      siblings();  兄弟节点
      find(selector)
    例子:
    <html>
    <!-- 遍历 -->
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    <script type="text/javascript" src="../js/jquery-1.4.3.js"></script>
    <script type="text/javascript">
     $(function(){
      $('#b1').click(function(){
       //var $obj = $('#d1').children();
       /*
       var $obj = $('#d1').children('div');
       $obj.css('font-size','60px');
       */
       //$('#d1').next('p').html('hello 555');
       //$('#d1').prev().html('hello 777');
       
       //$('#d1').siblings('span').css('font-size','80px');
       
       $('#d1').find('div').css('font-size','80px');
      });
     });
    </script>
    </head>
    <body style="font-size:30px;">
     <span>hello7</span>
     <div id="d1">
      <div>hello1</div>
      <div>hello2</div>
      <div>hello3</div>
      <div>
       <div>hello111</div>
      </div>
      <p>hello4</p>
     </div>
     <span>hello5</span><br/>
     <p>hello6</p>
     <input type="button" value="遍历" id="b1"/>
    </body>
    </html>


     

  • 相关阅读:
    具有快表的地址变换机构
    npm更换淘宝镜像
    内存扩充技术
    内存管理的概念
    内存的基础知识
    102. 二叉树的层序遍历
    104. 二叉树的最大深度
    206. 反转链表
    mysql 多字段查询,全局搜素
    java 处理html转义字符
  • 原文地址:https://www.cnblogs.com/hqr9313/p/2625024.html
Copyright © 2011-2022 走看看