请说出 div 和 $div 的联系和区别

区别

div 返回一个HTML DOM Object

$div 返回一个 jQuery Object,

两者不等价

$div是包装了dom对象后产生的,无法使用dom对象的任何方法,比如$('#x').innerHTML

为了区分两种情况,如果是dom对象,前面加$,如果是普通的dom对象,就是普通的命名

div变$div

对于已经是一个dom对象,只需要用$()dom对象包装起来,就能获得一个jQuery对象

$div变div

两种方法

1.jQuery对象是一个数据对象,通过[index]的方法,得到相应的dom对象

var $x = $('#x') //jQuery对象
var x = $x[0] //DOM对象

2. jQuery本身提供方法,通过get(index)方法,得到相应的dom对象

var $v = $('#v') //jQuery对象
var v = $v.get(0) //DOM对象

div的属性和方法

getElementById(id) // 获取带有指定 id 的节点(元素)

appendChild(node) // 插入新的子节点(元素)

removeChild(node) // 删除子节点(元素)

innerHTML // 节点(元素)的文本值

parentNode // 节点(元素)的父节点

childNodes // 节点(元素)的子节点

attributes // 节点(元素)的属性节点

等等

$div的属性方法

就是jQuery对象的属性和方法

addClass 增加一个class

after在每个匹配的元素之后插入内容

animate 创建自定义动画的函数

append向每个匹配的元素内部追加内容

appendTo把所有匹配的元素追加到另一个指定的元素元素集合中

attr设置或返回被选元素的属性值

问题2

<ul>
<li></li>
<li></li>
</ul>

请写出 $('li') 的结构。

$('li') 是一个对象

包含两个key,两个key分别是连个li元素的方法、属性和内容

他们原型是Object(0),里面包含了jquery在元素上定义的很多方法和属性比如

addClass 增加一个class

after在每个匹配的元素之后插入内容

animate 创建自定义动画的函数

append向每个匹配的元素内部追加内容

appendTo把所有匹配的元素追加到另一个指定的元素元素集合中

attr设置或返回被选元素的属性值

css 访问匹配元素的样式属性

empty 删除匹配的元素集合中所有的子节点

eq获取当前链式操作中第N个jQuery对象

等等

而它的原型是Object,拥有对象常见的方法

constructor 返回创建实例对象的 Object 构造函数的引用

hasOwnProperty 检测一个对象是否含有特定的自身属性

isPrototypeOf 方法用于测试一个对象是否存在于另一个对象的原型链上

propertyIsEnumerable 方法返回一个布尔值,表示指定的属性是否可枚举

toLocaleString 方法返回一个该对象的字符串表示

toString 方法返回一个表示该对象的字符串

valueOf 方法返回指定对象的原始值

参考 http://www.cnblogs.com/theWayToAce/p/5591221.html

随机推荐

  1. 消除Git diff中^M的差异

    消除Git diff中^M的差异 在Windows上把一个刚commit的文件夹上传到了Ubuntu.在Ubuntu上使用git status查看,发现很多文件都被红色标注,表示刚刚修改未add.在W ...

  2. python算法:约瑟夫问题

    据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特後,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被人抓到,于是决定了一个自杀方式,41 ...

  3. 描述一下JVM加载class文件的原理机制

    Java中的所有类,都需要由类加载器装载到JVM中才能运行.类加载器本身也是一个类,而它的工作就是把class文件从硬盘读取到内存中.在写程序的时候,我们几乎不需要关心类的加载,因为这些都是隐式装载的 ...

  4. 一分钟了解ruby中的单测

    之前用gtest写过很多c++的单测case, 对gtest的强大和灵活印象深刻:最近需要用ruby写一个小工具, 接触了下ruby, 写了代码就要写单测啊(好的单测确实对代码的健壮性和正确性保证上太 ...

  5. 使用graphql和apollo client构建react web应用

    graphql是一种用于 API 的查询语言(摘自官网). 我们为什么要用graphql? 相信大家在开发web应用的时候常常会遇到以下这些问题:后端更新了接口却没有通知前端,从而导致各种报错:后端修 ...

  6. 如何使用Jenkins进行持续集成测试

    如何使用Jenkins进行持续集成测试: 安装Java环境: 安装Jenkins:两种方式,直接运行文件:使用tomcat运行: 创建一个job,构建的时候选择 execute Windows bat ...

  7. POJ 2407.Relatives-欧拉函数O(sqrt(n))

    欧拉函数: 对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目. 对于一个正整数N的素数幂分解N=P1^q1*P2^q2*...*Pn^qn. Euler函数表达通式:euler(x)=x(1 ...

  8. RPD Volume 168 Issue 4 March 2016 评论3

    Design and fabrication of a multipurpose thyroid phantom for medical dosimetry and calibration   Abs ...

  9. DataNucleus(通过jpa和jdo接口访问多中数据源)

    DataNucleus主页:http://www.datanucleus.org/index.html 简介: DataNucleus项目为Java运行环境中的应用数据提供了管理,它提供了标准的接口( ...

  10. luogu P1064 金明的预算方案

    题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”.今 ...