jQuery是继Prototype之后又一个优秀的JavaScript库。它是轻量级的js库,它兼容CSS3,还兼容各种浏览器。jQuery使用户能更方便地处理HTML(标准通用标记语言下的一个应用)、events、实现动画效果,并且方便地为网站提供AJAX交互。
优点:
(1)写少代码,做多事情(write less do more);
(2)免费,开源且轻量级的js库,容量很小;
(3)兼容市面上主流浏览器,例如 IE、Firefox、Chrome;
(4)能够处理 html/jsp/xml、css、dom、事件、实现动画效果,也能提供异步ajax功能;
(5)文档手册很全,很详细,而且有成熟的插件可供选择;
缺点:
(1)由于不是原生JavaScript语言,理解起来可能会受到限制;
(2)项目中需要包含jQuery库文件,如果包含多个版本的jQuery库,不仅显得过于臃肿而且可能会发生冲突。
1.对元素内值的操作
text()获取元素标签里的内容,不解析html。不取标签,只取文本
text(value):将值赋予元素,不解析html.直接显示标签
html()获取元素标签里的内容,解析html。获取标签和文本
html(value):将值赋予元素,解析html。将标签解析成样式进行显示
val():获取form表单中标签的内容,例如输入框input标签中的内容
val(value):给form表单元素赋值form表单中标签取值:input,select,textarea
2.对属性的操作
attr(属性名) 获取元素的某项属性值
attr(属性名,值) 设置元素的某项属性值
Attr({属性名:值,属性名:值… …}) 设置元素的多项属性值
removeAttr() 移除元素的属性
attr():用在键值对属性上取值和赋值,比如说type="text" name="info" id="info"
prop():用在是否选中,值是true和false。例如readonly,checked,selected,disable
两个方法给属性赋值时没有区别。
获取属性值时,attr()选中返回是属性,没选中返回undefined;prop()选中true否则false
3.对样式操作
css(样式名) 获取元素的某项样式值
css(样式名,值) 设置元素的某项样式值
removeClass(类样式名) 删除元素的类样式。无参数:移除元素所有属性。有参数:移除参数所指的属性。
toggleClass(类样式名) 切换元素的默认样式和指定样式
toggleClass(类样式名,布尔值) 切换元素的默认样式和指定样式。第二个参数:true表示执行切换到class类。false表示执行回默认class类(默认的是空class)。
4.对节点操作
append(): 向每个匹配的元素内部追加内容
appendTo(): 将所有匹配的元素追加到指定的元素中,即$(A).appendTo(B),是将元素A追加到B中内容后面
prepend(): 向每个匹配的元素内部前置内容
prependTo(): 将所有匹配的元素前置到指定的元素中,即$(A).prependTo(B),是将A前置到B中。
after(): 在每个匹配的元素之后插入内容
insertAfter(): 将所有匹配的元素插入到指定元素的后面。
before(): 在每个匹配的元素之前插入内容
insertBefore(): 将所有匹配的元素插入到指定元素的前面
remove() :删除被选元素(及其子元素)
empty() : 从被选元素中删除子元素
clone(): 复制节点元素
replaceAll() :使用前面的元素替换后面的元素
replaceWith() :使用后面的元素替换前面的元素
5.表单中节点操作
parent()是找到匹配元素的父节点
find()是来搜索与表达式匹配的元素
is()是用一个表达式来检查当前选择器的元素集合,如果存在至少一个匹配元素,则返回 true
triggerHandler()这一个特点方法会触发元素上的特定事件
keyup()是按键向上时触发
6.事件绑定方式
事件方法会触发匹配元素的事件,或将函数绑定到所有匹配元素的某个事件。
$("button#demo").click(function(){$("img").hide()})
$("选择器").bind("click",function(){})
$("button#demo").bind("click",function(){$("img").hide()});
该方式可以通过unbind解绑事件
$("button#demo").unbind("click");
7.鼠标事件
click:当用户单击鼠标按钮或按下回车键时触发
dblclick:当用户双击主鼠标按钮时触发
mousedown:当用户按下了鼠标还未弹起时触发
mouseup:当用户释放鼠标按钮时触发
mouseover:当鼠标移到某个元素上方时触发
mouseout:当鼠标移出某个元素上方时触发
mousemove:当鼠标指针在元素上移动时触发
8.键盘事件
keydown:当用户按下键盘上任意键触发,如果按住不放,会重复触发
keypress:当用户按下键盘上的字符键触发,如果按住不放,会重复触发(字母数字,空格,回车能触发,tab、ctrl不能触发)
keyup:当用户释放键盘上的键触发
9.HTML事件
load:当页面完全加载后在window上面触发,或当框架集加载完毕后在框架集上触发
unload:当页面完全卸载后在window上面触发,或当框架集卸载后在框架集上触发
select:当用户选择文本框(input或textarea)中的一个或多个字符触发
change:当文本框(input或textarea)内容改变且失去焦点后触发
focus:当页面或者元素获得焦点时在window及相关元素上面触发
blur:当页面或元素失去焦点时在window及相关元素上触发
submit:当用户点击提交按钮在<form>元素上触发
reset:当用户点击重置按钮在<form>元素上触发
resize:当窗口或框架的大小变化时在window或框架上触发
scroll:当用户滚动带滚动条的元素时触发