zoukankan      html  css  js  c++  java
  • JQuery基础

    1. JQuery包装集和Dom元素的区别.

         dom元素:

              var div = document.getElementById("testDiv"); 

         JQuery包装集:

              var jqDiv = $("#testDiv");

         dom元素转换为JQuery包装集:

              var jqDiv = $(div);

         JQuery包装集是一个集合, 是一个dom元素的集合.也就是说其中的每个元素都是dom元素.比如:

              var dom = $("#testDiv")[0];

              $("#testDiv").each(function(){

                   alert(this);//this 是dom元素

                   $(this).html("testDIv content"); // 通过$()将dom元素转换为JQuery包装集,才能调用JQuery的方法

              });

    2. 选择器和过滤器的区别

         JQuery中的选择器分为选择器和过滤器两种. 选择器没有默认的范围, 而过滤器是必须有范围的. 比如

              $(".bgRed div"); //选中classname为bgRed的元素下的所有子孙div.

              $(".bgRed>div"); //选中classname为bgRed的元素的直接子节点中的div

         这种是选择器. 而下面这种是过滤器

              $("tr:first"); // 表格的第一行.

         过滤器的意思就是说, ":" 前面的是范围, 后面的是过滤条件, 然会结果和":"前面的是一种类型的元素. 而选择器不是这样

    3. $(document).ready()即$() 与 window.onload()的区别

         winddow.onload() : 浏览器执行该函数是在构建完dom树之后, 并且是在所有图像及外部资源加载完成以后才执行. 这就导致如果某个外部资源加载有问题时, 函数中依赖对象未完成加载而出现的函数执行出现异常, 而导致页面不完整. 

         $() : 是在dom树构建完成以后, 图像及外部资源加载之前执行的. $() 可以在一个页面中绑定多个函数, 而window.onload却只能调用一个函数

    4. 元素属性和dom属性的区别

         <img src="images/image.1.jpg" id="hibiscus" alt="Hibiscus" class="classA" />

         比如, class是元素属性. 实际在浏览器解析时,会将标签解析成dom对象, 将元素属性解析成dom属性. 在javascript中, 只能直接获取或设置dom属性.如果要设置上面的class则应该这样写:

         img1.className = "classB";

         在javascript中如果要获取元素属性, 要使用getAttribute, Jquery中则使用attr()

    4. 操作元素属性

         $("img").attr("src"); //返回文档中第一个图像的src属性值:

         $("img").attr({ src: "test.jpg", alt: "Test Image" });//为所有图像设置src和alt属性:

         $("img").attr("src","test.jpg"); //为所有图像设置src属性:

         $("img").attr("title", function() { return this.src });//把src属性的值设置为title属性的值:

         $("img").removeAttr("src"); //将文档中图像的src属性删除,注意是删除属性值, 即将src属性值设为空

    5. 存储数据的两种方式:

         a. 使用自定义的元素属性存储数据

              <div id="testDiv5" customer="customer data 1">获取自定义数据‐1</div> 

         在事件处理中获取数据:

              $("#testDiv5").bind("click", function(event) { alert($(event.ta

    rget).attr("customer")); });

    Image

         b. 使用脚本将数据传递给事件处理函数

         <div id="testDiv6">获取自定义数据‐2</div> 

         $("#testDiv6").bind("click", { customer: "customer data 2" }, fu

    nction(event) { alert(event.data.customer) }); 

    Image(1)

         注意,这里bind函数的定义:bind( type, [data], fn ), 中间是需要传送给fn的参数.

    6. trigger( event, [data] ) 和 triggerHandler( event, [data] )的区别

         用于在程序中触发动作.主要区别是trigger会出发浏览器默认的动作, 而triggerHandler不会出发.

    7. 多播委托

    8. $().each() 和$.each()的区别

         $().each()  用于遍历Jquery对象. 而$.each()用于遍历数组和对象. 注意, each() 只能遍历, 无法改变返回后的对象. 如果要改变使用Jquery.map(array, callback);

  • 相关阅读:
    lumen 错误&日志
    Composer设置忽略版本匹配的方法
    Laravel框架数据库CURD操作、连贯操作使用方法
    laravel5-目录结构分析
    Lumen 设置 timezone 时区
    phpstorm laravel单元测试 配置
    使用laravel的Eloquent模型获取数据库的指定列
    phpstorm 配置自带webserver ,配置根目录
    使用 OWIN 作为 ASP.NET Web API 的宿主
    angularjs webstorm 单元测试 Package.json
  • 原文地址:https://www.cnblogs.com/jeevan/p/3487341.html
Copyright © 2011-2022 走看看