首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

JQuery学习札记(2)

2012-09-15 
JQuery学习笔记(2)1.JQuery常用方法1.1内部插入bodyulli第一项/lili第二项/lili第三项/li

JQuery学习笔记(2)
1.JQuery常用方法1.1内部插入

  <body>

      <ul>

           <li>第一项</li>

           <li>第二项</li>

           <li>第三项</li>

      </ul> 

      <hr/> 

      <div>这是子元素,要插入到父元素内</div>

      <scripttype="text/javascript">

           //DIV标签插入到UL标签之前(父子关系)

           $("ul").append($("div")); //格式:父.append(子)  两个元素是父子关系,子在父的后面

           //DIV标签插入到UL标签之后(父子关系)

           $("ul").prepend($("div"));//格式:父.prepend(子) 两个元素是父子关系,子在父的前面

      </script>

  </body>

1.2外部插入

  <body>

      <ul>

           <li>第一项</li>

           <li>第二项</li>

           <li>第三项</li>

      </ul>

      <hr/> 

      <div>这是子元素,要插入到父元素外</div>

      <scripttype="text/javascript">

           //DIV标签插入到UL标签之前(兄弟关系)

           $("ul").after($("div"));//格式: 父.after(子) 子在父后面,两个元素是兄弟关系

           //DIV标签插入到UL标签之后(兄弟关系)

           $("ul").before($("div"));//格式: 父.before(子) 子在父前面,两个元素是兄弟关系

      </script>

  </body>

1.3获取、设置元素属性值和删除元素属性

  <body>

      <form>

           <table>

                 <tr>

                      <td>

                            <inputtype="text"name="username"value="张三"/>

                      </td>

                      <td>

                            <inputtype="password"name="password"value="123456"/>

                      </td>

                 </tr>

           </table>

      </form>

      <scripttype="text/javascript">

           //取得form下第一个input元素的type属性

//        alert($("forminput:first").attr("type"));

           //设置form下最后个input元素的为只读文本框

           $("forminput:last").attr("readonly","readonly");

      </script>

  </body>

小结:在JQuery中,对象调用方法时只有一个参数时,一般是获取其对应属性的值,有两个参数时是给指定的属性设置值。

--------------------------------------------

  <body>

      <table>

           <tr>

                 <td>

                      添加属性border/align/width

                 </td>

                 <td>

                      删除属性align

                 </td>

           </tr>

      </table>

      <scripttype="text/javascript">

           //为<table>元素添加属性border/align/width

           $("table").attr("border","2").attr("align","center").attr("width","60%");

           //将<table>元素的align属性删除

           $("table").removeAttr("align");

      </script>

  </body>

1.4JQuery中创HTML元素

l      创建节点: 使用 jQuery 的函数 $(): $(html); 会根据传入的 html 标记字符串创建一个 DOM 对象, 并把这个 DOM 对象包装成一个jQuery对象返回.

l      注意:

?        动态创建的新元素节点不会被自动添加到文档中, 而是需要使用其他方法将其插入到文档中;

?        当创建单个元素时, 需注意闭合标签和使用标准的 XHTML 格式. 例如创建一个<p>元素, 可以使用 $(“<p/>”) 或 $(“<p></p>”), 但不能使用 $(“<p>”)或 $(“</P>”)

l      创建文本节点就是在创建元素节点时直接把文本内容写出来; 创建属性节点也是在创建元素节点时一起创建。

  <body>

    <hr/>

    <scripttype="text/javascript">

          //创建div元素,添加"哈哈"文本,ID属性,并添加到文档中

          var $div = $("<div>哈哈</div>").attr("id","divID");  //创建元素只要将元素放到$()中就可以了

          $(document.body).append($div);

    </script>

  </body>

1.5替换

<body>

      <tableborder="1"align="center">

           <tr>

                 <td>

                      <divstyle="width:165px;height:23px">

                            双击会被替换成文本框

                      </div>

                 </td>

                 <td>

                      不会变

                 </td>

           </tr>

      </table>

      <scripttype="text/javascript">

           //双击<div>中的文本,用文本框替换文本

           $("div").dblclick(function() {

                 var $input = $("<inputtype='text' value='哈哈'/>");

                 $(this).replaceWith($input); //格式:旧元素.replaceWith(新元素)

           });

      </script>

  </body>

1.6添加、删除、切换样式

  <body>

      <div>无样式</div>

      <divclass="myClass">有样式</div>

      <scripttype="text/javascript">

           //为无样式的DIV添加样式

//        $("div:first").addClass("myClass");  //格式:对象.addClass(“样式名”)

           //为有样式的DIV删除样式

//        $(".myClass").removeClass("myClass");  //格式:对象.removeClass(“样式名”)

           //切换样式,即有样式的变成无样式,无样式的变成有样式

//        $("div").toggleClass("myClass");//格式:对象.toggleClass(“样式名”)

           //最后一个DIV是否有样式

           var flag = $(".myClass").hasClass("myClass");

           alert(flag);

      </script>

  </body>

1.7查找

  <body>

      <p>Hello</p>

      <div>

           <span>

                 HelloAgain

                 <b>

                      Bold

                 </b>

           </span>

      </div>

      <p>And Again</p>

      <hr/>

      <hr/>

      <scripttype="text/javascript">

           //取得div元素的直接子元素内容,不含后代元素(即span元素的内容Hello Again<b>Bold</b>)

//        alert($("div").children().html());

           //取得div元素的下一个同级的兄弟元素内容     

//        alert($("div").next().html());//And Again

           //取得div元素的上一个同级的兄弟元素内容

//        alert($("div").prev().html());//Hello

           //依次取得div元素的上下一个同级的所有兄弟元素的个数

           alert($("div").siblings().size());//5个

      </script>

  </body>

1.8动画

显示隐藏:show  hide

淡入淡出:fadeIn  fadeOut

上滑下滑:slideUp  slideDown

  <body>

      <p>

<!--          <imgsrc="../images/zgl.jpg" style="display: none;"/> -->

           <imgsrc="../images/zgl.jpg"/>

      </p>     

      <div>

           <!--加载完毕 -->

      </div>

      <scripttype="text/javascript">

           //图片显示

//        $("img").show(5000);//show方法的参数有("slow", "normal", or"fast")或表示动画时长的毫秒数值。

           //图片隐蔽

           $("img").hide(5000); //参数同show,show 和hide方法都可以传一个回调函数,在动画执行完毕的时候处理相应的的事情。

      </script>

  </body>

1.9复制

clone() 不复制被复制元素的行为。

clone(true)有参数的时候会将被复制的元素的行为(如果单击事件)也一起复制过来。

2.事件2.1单击事件click()2.2双击事件dblclick()2.3失去焦点 blur()2.4获取焦点focus()2.5页面加载事件

   dom--onload:

     1)window.onload=function(){}页面加载时执行,后者会覆盖前者

     2)只有当页面全部加载完成后,onload才能够执行

     3)window.onload无简写形式

   jquery--ready():

     1)$(document).ready(函数)页面加载时执行,每个方法都会执行,不会覆盖   

     2)只要当页面的轮廓加载完毕,就可以执行ready()事件,不必等行所有img都显示完成,相对onload执行速度较快  

     3)ready()可以有简写形式,叫$(函数);

2.6内容改变change()2.7选中文字select()2.8提交表单submit()2.9页面卸载 unload()

页面卸载是指刷新页面或关闭浏览器的时候。有些浏览器关闭时不会执行upload事件,不建议使用upload事件处理问题。

3.JQuery中使用AJAX3.1 load()方法的使用

1、load方法使用jquery对象调用的,谁调用了load方法,该方法的返回值就会设置到该对象的value属性上。

2、load方式的请求方式

如果有无参数则是GET方式,如果有参数则是POST方式。(默认使用 GET 方式 - 传递附加参数时自动转换为 POST 方式)

3、load有三个参数load(url[必选,请求的地址], sendData[可选,发送的参数],fn[可选,回调用函数]),发送的参数必须符合json格式,即{key:value, key:value}这样的格式。

回调函数中也有三个参数fn(backData[返回的数据],textStatus[文本状态, 如success,error ],xhr[XMLHttpRequest对象] )

3.2 $.get()方法的使用3.3 $.post()方法的使用

无论使用get或是post,都无需程序员编码和设置post请求头,都由jquery框架全权负责。

 

 

 

 

 

热点排行