JS与JQuery异同
①.根据ID取元素
JS:取到的是一个DOM对象。
例:var div = document.getElementByID("one");
JQUERY:取到的是一个JQUERY对象。
例:var div = $("#one");——括号里面是根据某个东西来找,相当于一个选择,如果我们要根据ID来找,在样式表里的ID是用#来表示的,所以在这里我们直接带入井号,整句的意思就是根据ID为one的来查找。
②.根据class取元素,在数组里面如果要取DOM对象使用索引的方式,如果要取JQUERY对象使用eq()
JS:取到的是一个数组
例:var div = document.ElementsByClassName("test");
JQUERY:
例:var div = $(".test");
③.根据name取元素
JS:返回的是一个数组
例:var bd = document.getElementsByName(uid);
JQUERY:的方式是用 方括号,属性=一个值,不限制非要根据name来取值,JQUERY是根据属性来取元素
例:$("[name='uid']");
④.根据标签名取元素
JS:返回的也是一个数组
例:var div = document.getElementsByTagName("div");
JQUERY:和样式表里面给所有div加样式的方法一样,在双引号内直接写标签名
例:$("div");
附:JQUERY的其他取值方式
组合选取:var div = $("div span");——有很多组合方式
- 操作内容
①.非表单元素(如果是文本就用text方法,如果是html代码就用html方法)
例:
div.text();——无参数的情况下是取值
div.text("aaaa");——有参数的情况下是赋值
div.html();——无参数的情况下是取值
div.html("aaaa");——有参数的情况下是赋值
②.表单元素
JS:div.value;——取值;div.value = xxx;——赋值
JUQERY:div.val();——无参数是取值,有参数是赋值。
- 操作属性
JS里面用来操作属性的方法是
div.setAttribute("","");——设置属性、修改属性
div.removeAttribute("");——移除属性,引号里面写一个属性名
div.getAttribute();——获取属性
JQUERY里面用来操作属性的方法
添加属性:div.attr("test","aa");——给这个attr方法加入参数,属性名叫做test,属性的值是aa
移除属性:div.removeAttr("test");——移除test这条属性
获取属性:div.attr("test");——在attr方法里面直接写入一个属性的名就可以了
- 操作样式
JS里面操作样式的关键字是style
例:div.style.backgroundColor = "red";——把这个div的背景色设置成为了红色
几个常见的属性:
CSS属性 | JavaScript属性 |
---|---|
background-image | style.backgroundImage |
color | style.color |
display | style.display |
font-family | style.fontFamily |
height | style.height |
width | style.width |
JQUERY里面操作样式的关键字是css
例:div.css("background-color","yellow");——把这个div的背景色变为黄色,在这里CSS里面所有的样式和css样式表里面的样式是一模一样的没有任何变化
JS操作样式的方法只能获取内联样式,不能取内嵌的和外部的!!!!!
JQUERY操作样式的方法可以是内联的也可以是内嵌的
- jQuery的好处
- 兼容性好
- 可以写多个入口函数
- 代码简洁(具有隐式迭代机制)-- 每当我们调用选择器方法查找dom里的元素时,其实就是把找到的dom元素存入一个JQ对象里的dom数组中,然后再把这个JQ对象返回
- 容错率较高,前面的代码出了问题,后面的代码不受影响
DOM : 文档对象模型
注意: 不是一个具体对象
很多对象组成的集合
提供很多的属性和方法操作网页(标签 、 属性 、内容)
document对象是DOM中最顶层对象
BOM : 浏览器对象模型
操作浏览器
BOM是由哪些对象组成?
-
window
:BOM
中最顶层对象
screen
:屏幕对象
location
: 地址栏对象
history
:历史记录对象
navigator
: 导航对象
document
: 文档对象
frames
:框架集
window 对象
访问属性: 对象.属性名
访问方法: 对象.方法名()
jquery入口函数写法:
1、第一种:
$(document).ready(function(){ });
2、第二种(最简洁的写法,推荐):
$(function(){
});
3、第三种:
jQuery(document).ready(function(){
});
4、第四种:
jQuery(function(){
});