zoukankan      html  css  js  c++  java
  • jQuery基础--样式篇(3)

    1.jQuiery对象与DOM对象  

      对于刚刚接触jQuery的初学者,我们要清楚认识一点:jQuery对象与DOM对象是不一样的。可能一时半会分不清楚哪些是jQuery对象,哪些是DOM对象,下面重点介绍一下jQuery对象,以及两者相互间的转换。

      下面举一个简单的例子:

    <p id="cnblogs"></p>

      使用原生的javascript处理:通过原生DOM模型提供的document.getElementById(“snblogs”) 方法获取的DOM元素就是DOM对象,通过DOM方法将自己的innerHTML与style属性处理文本与颜色。

    var p = document.getElementById('snblogs');
    p.innerHTML = '您好!通过博客园学习前端才是最佳的途径';
    p.style.color = 'red';

      使用jQuery处理:通过$('#snblogs')方法会得到一个$p的jQuery对象,$p是一个类数组的对象这个对象里面其实是包含了DOM对象的信息的然后封装了很多操作方法,调用自己的方法html与css处理,得到的效果与标准的JavaScript处理结果是一致的。

    var $p = $('#cnblogs');
    $p.html('您好!通过博客园学习前端才是最佳的途径').css('color','red');

    通过标准的JavaScript操作DOM与jQuyer操作DOM的对比,我们不难发现:

    1. 通过jQuery方法包装后的对象,是jQuery对象,它是一个新的对象.
    2. jQuery与DOM对象完全不是同一个东西,但是又似曾相似,因为他们都能处理DOM.
    3. 通过jQuery处理DOM的操作,可以让开发者更专注业务逻辑的开发,而不需要我们具体知道哪个DOM节点有那些方法,也不需要关心不同浏览器的兼容问题,我们可以通过jQuery更友好的API进行开发,同时代码也会更加精短.

     2.jQuery对象转化为DOM对象

      jQuery库本质上还是JavaScript代码,它只是对JavaScript语言进行包装处理,为了是提供更好更方便快捷的DOM处理与开发常见中 经常使用的功能。我们可以用jQuery的同时也能混合JavaScript原生代码一起使用。通过jQuery生成的对象是一个做了包装处理的对象,如 果要用jQuery对象自己的方法,就需要满足这个对象是通过jQuery生成的。 在很多场景中,我们需要jQuery与DOM能够相互的转换,它们都 是操作的DOM元素,jQuery是一个类数组对象,DOM对象就是一个单独的DOM元素。

      如何把jQuery对象转成DOM对象?

    HTML代码

    <div>元素一</div>
    <div>元素二</div>
    <div>元素三</div>

    JavaScript代码

    var $div = $('div') //jQuery对象
    var div = $div[0] //转化成DOM对象
    div.style.color = 'red' //操作dom对象的属性
      用jQuery找到所有的div元素(3个),因为jQuery 对象也是一个数组结构,可以通过数组下标索引找到第一个div元素,通过返回的div对象然后调用它style属性然修改第一个div元素的颜色。这里需
    要注意的一点是,数组的索引是从0开始的,也就是第一个元素下标是0
      

    通过jQuery自带的get()方法

    
    

    jQuery对象自身提供一个.get() 方法允许我们直接访问jQuery对象中相关的DOM节点,get方法中提供一个元素的索引:

    
    
    var $div = $('div') //jQuery对象
    var div = $div.get(0) //通过get方法,转化成DOM对象
    div.style.color = 'red' //操作dom对象的属性
    
    

    其实我们翻开源码,看看就知道了,get方法就是利用的第一种方式处理的,只是包装成一个get让开发者更直接方便的使用。

    3.DOM对象转化为jQuery对象

     相比较jQuery转化成DOM,开发中更多的情况是把一个dom对象加工成jQuery对象。$(参数)是一个多功能的方法,通过传递不同的参数而产生不同的作用。
     如果传递给$(DOM)函数的参数是一个DOM对象,jQuery方法会把这个DOM对象给包装成一个新的jQuery对象
      

      通过$(dom)方法将普通的dom对象加工成jQuery对象之后,我们就可以调用jQuery的方法了

    
    

    HTML代码

    
    
    <div>元素一</div>
    <div>元素二</div>
    <div>元素三</div>
    
    

    JavaScript代码

    
    
    var div = document.getElementsByTagName('div'); //dom对象
    var $div = $(div); //jQuery对象
    var $first = $div.first(); //找到第一个div元素
    $first.css('color', 'red'); //给第一个元素设置颜色

    通过getElementsByTagName获取到所有div节点的元素,结果是一个dom合集对象,不过这个对象是一个数组合集(3个div元素)。通过$(div)方法转化成jQuery对象,通过调用jQuery对象中的
    first与css方法查找第一个元素并且改变其颜色。


     
  • 相关阅读:
    C#中线程安全的单例模式
    分布式服务和库表设计模式详解
    通俗易懂的讲解下Java注解
    MEF框架使用总结
    Docker:四、Docker进阶 Windows Docker IIS 部署
    Docker:三、深入Docker容器&Asp.net发版
    Docker:二、开始部署第一个Asp.net应用
    Docker:一、开始部署第一个Asp.net应用
    Docker:常见命令
    .net 中的 StringBuilder 和 TextWriter 区别
  • 原文地址:https://www.cnblogs.com/wgl1995/p/5608382.html
Copyright © 2011-2022 走看看