$ 和getElementId的区别 / 一个jquery对象的原型
请说出 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 方法返回指定对象的原始值
随机推荐
- js面向对象编程(一):封装(转载)
一. 生成对象的原始模式 假定我们把猫看成一个对象,它有"名字"和"颜色"两个属性. var Cat = { name : '', color : '' } 现 ...
- 病毒&烦人的幻灯片
<病毒>传送门 <烦人的幻灯片>传送门 病毒 描述 有一天,小y突然发现自己的计算机感染了一种病毒!还好,小y发现这种病毒很弱,只是会把文档中的所有字母替换成其它字母,但并不改 ...
- 【SQL】宿主语言接口
一般情况下,SQL语句是嵌套在宿主语言(如C语言)中的.有两种嵌套方式: 1.调用层接口(CLI):提供一些库,库中的函数和方法实现SQL的调用 2.直接嵌套SQL:在代码中嵌套SQL语句,提交给预处 ...
- Java上传文件格式判断
判断用户上传文件的合法性仅仅通过后缀名是完全不够的,谁也不知道后缀名是否被更改,服务器保存一个不知道真实类型的文件有极大的风险. 因此需要后台进行进一步的文件类型校验,这里有两种情况: 1)一般的文件 ...
- selenium+python自动化77-autoit文件上传【转载】
前言 关于非input文件上传,点上传按钮后,这个弹出的windows的控件了,已经跳出三界之外了,不属于selenium的管辖范围(selenium不是万能的,只能操作web上元素).autoit工 ...
- hdu 2236(二分图最小点覆盖+二分)
无题II Time Limit: 2000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- 服务器老是出现502 Bad Gateway?
给你的upstream增加keepalive配置没有? upstream backend { server http://127.0.0.1:8888; keepalive 32; } 在nginx和 ...
- 云平台资源挂盘办法V1.2
一.优先使用mount 方式进行挂盘,记得使用sync参数,如果对方网络限制了445端口,我们被迫采用第二种办法. mount -t cifs -o sync,username='Administra ...
- 自动监控tomcat脚本并且执行重启操作
#!/bin/sh # func:自动监控tomcat脚本并且执行重启操作 # author:reed # date:// # 定义环境变量 MYPATH=/usr/local/jdk/bin exp ...
- hdu5829
多校训练8,有官方题解 主要之前没写过ntt,感觉不是很懂原根 先贴一份当模板吧 #include<iostream> #include<cstdio> #include< ...