【JQuery】jQuery中的常用方法小结
1.层级选择器
后代选择器 "父元素 后代元素"
比如:$("div p") 选取div元素下所有的p元素
子元素选择器 "父元素 > 子元素"
比如:$("div>p") 选取div的子元素中的p元素
第一个向后兄弟元素 "元素名+兄弟元素"
比如:$("div+p") 选取div元素后的第一个p元素
向后所有的兄弟元素 "元素名~兄弟元素"
比如:$("div~p") 选取div元素后的所有p元素
2.筛选选择器
:first $("p:first") 第一个<p>元素
:last $("p:last"); 最后一个<p>元素
:gt $("p:gt(1)"); 编号大于1的所有<p>元素
:eq $("p:eq(1)"); 编号等于1的<p>元素
:odd $("td:odd"); 编号是奇数的所有<td>元素
:even $("td:even"); 编号是偶数的所有<td>元素
:not $("p:not(.notr)") 选取不带有类名为notr的所有<p>元素
根据内容来筛选
:contains(内容)
:empty()
根据显示来筛选
:hidden 选出隐藏的元素(display:none 或 type="hidden" 或 隐藏父元素 或 长度和宽度为 0的 ,这些元素是隐藏元素 )
:visible
3.表单选择器
:input
:text
:button
:file
:radio
:submit
4.属性--筛选选择器
[属性名] 选择到带这个属性的元素
[属性名='值'] 选择到属性等于某个值的元素
[属性名!='值'] 选择到属性不等于某个值的元素
比如:$("input[name='newlatter']"); 选取name属性为newlatter的input元素
我们常常需要选择按钮组中被选中的值,这时就可以通过属性选择器来实现,如下:
<html> <head> <script> $(document).ready(function(){ $("#btn").click(function(){ var gender=$("input[name='gender']:checked"); alert(gender.val()); }); }); </script> </head> <body> <input type="radio" name="gender" value="man" checked/>男 <br/> <input type="radio" name="gender" value="feman">女 <br/> <input type="button" id="btn" value="测试"> </body> </html>
5.表单属性选择器
利用 :checked :selected :enabled :disabled 来对元素进行筛选
对属性筛选选择器的简化
比如: $(":radio:checked") 选中所有的已经选中的radio元素
$("select option:selected") 选中的所有的已经选中的select下的option元素
6.属性方法
attr("属性名") 获取属性
attr("属性名",属性值) 设置属性
removeAttr("属性名") 移除属性
7.获取和设置value属性的方法
val() 和 val("值")
8. html() html("值")
html()对应innerHTML
html("值")对应innnerHTML="值"
text() text("值")
text()对应innerText()
text("值")对应innerText="值"
9.样式函数
css("样式的名字") 获取样式对应的值
css("样式的名字","样式的值") 设置对应的样式 一次设置一个
css({"样式的名字":"样式的值","样式的名字":"样式的值"}) 一次设置多个样式
addClass("class名") 增加一个class属性对应的值
removeClass("class名") 删除class属性对应的值
toggleClass("class名") 切换
width() 获取宽度
height() 获取高度
innerWidth() 获取宽度(包括内边距)
outerWidth() 获取宽度 (包括 内边距 和 边框 )
outerWidth(true) 获取宽度 (包括 内边距 和 边框 和 外边距)
offset() 获取元素绝对位置的偏移坐标
offset().top 获得元素距离顶部绝对位置的偏移坐标
offset().left 获得元素距离左边绝对位置的偏移坐标
offset({top:value,left:value}) 设置元素的绝对位置坐标
position() 获取元素相对父元素的偏移坐标
position().top 获取元素相对父元素顶部的偏移坐标
position().left 获取元素相对父元素左边的偏移坐标
10.显示和隐藏函数
show() 显示
hide() 隐藏
toggle() 切换
show(speed) 在规定的时间内显示
hide(speed) 在规定的时间内隐藏
toggle(speed) 在规定的时间内切换
slideUp(speed) 在规定的时间内向上收缩
slideDown(speed) 在规定的时间内向下展开
slideToggle(speed) 在规定的时间内切换上面的两种状态
fadeIn(speed) 在规定的时间内淡入
fadeOut(speed) 在规定的时间内淡出
fadeToggle(speed) 切换上面的两种状态
11.自定义动画
选择器.animate({"参数"},[时间],[动画回调函数]);
$(document).ready(function(){
$("button").click(function(){
$("div").animate({
left:'250px',
opacity:'0.5',
height:'150px',
width:'150px'
},2000);
});
});
12.绑定事件
选择器.bind("事件",事件处理函数); 元素的事件 关联上对应的事件处理函数 推荐使用on
选择器.unbind("事件"); 断开元素的事件 和 对应处理函数的关联 推荐使用off
选择器.trigger("事件"); 触发事件调用
创建常用的事件函数:
click(fn)/click()
dblclick(fn)/dblclick()
blur(fn)/blur()
focus(fn)/focus()
change(fn)/change()
keydown(fn)/keydown()
keyup(fn)/keyup()
mouseover(fn)/mouseover()
mouseout(fn)/mouseout()
submit(fn)/submit()
load(fn)/unload(fn)
比如:
$("div").click(function(e){});//e是事件对象
$("div").bind("click",function(){});
$("div").trigger("click"); 触发div的click事件
13.event事件对象常用的属性和方法
target 事件源
pageX 鼠标点击的X坐标
pageY 鼠标点击的Y坐标
stopPropagation() 取消事件冒泡
比如:$(":button").click(function(e){
alert(e.pageX+":"+e.pageY);
});
14.组合事件函数
hover(over,out)
鼠标移上去触发over函数,移开触发out函数
15.动态事件函数
on(事件类型,选择器,处理函数)
可以给某元素中现有和未来与选择器匹配的元素绑定事件
比如:$("table").on("click","tr",function(){
//事件处理逻辑
});
//网页中table元素是已经存在的,只不过table中还并没有数据(自然也没有tr元素)。然后通过用户某种操作,在table元素中动态添加了数据(包含了tr元素),这时创建的tr元素是具有上面绑定的click事件的。
16.文档处理函数
$(html); 创建元素
append() 向每个匹配的元素内部追加内容
比如:$("body").append("<h1>我是追加元素</h1>");
prepend() 向每个匹配的元素内部前置内容
after() 在每个匹配的元素之后插入内容
before() 在每个匹配的元素之前插入内容
remove() 删除节点
empty() 清空节点
clone() 复制节点元素
clone(true) 复制节点元素以及绑定的事件处理
children() 查找子元素
next() 查找后面的兄弟元素
prev() 查找前面的兄弟元素
siblings() 查找兄弟元素
find(selector) 查找子元素以及后代元素
parent() 查找父元素
parent(selector) 查找祖先元素
eq(index) 返回index+1位置处的jQuery对象
first() 获取第一个元素
last() 获取最后一个元素
is(expr) 判断元素是否满足expr条件
not(expr) 返回不符合一定条件的元素
get(index) 取得其中一个匹配的DOM元素
17.工具函数
$.each(object,[callback])
遍历方法,用于遍历数组和对象
$.unique(array)
删除数组中重复的元素,注意:只能删除DOM元素数组、字符串或数字数组
$.merge(first,second)
合并两个数组,合并两个数组到第一个数组上
$.trim(str)
去掉字符串起始和结尾的空格
17.ajax函数
$.ajax()
异步请求函数
$.get()
使用GET方式的异步请求
$.post
使用POST方式的异步请求
$.getJson
使用GEt方式,返回值类型是JSON类型的异步请求
关于Ajax的使用可以详见“浅析Ajax的使用”