方法

方法 描述
jQuery(selector, [context]) 相当于 $(context).find(selector) 或者 context.find(selector)
toggleClass() 对设置或移除被选元素的一个或多个类进行切换。该方法检查每个元素中指定的类。如果不存在则添加类,如果已设置则删除之。这就是所谓的切换效果。
children() 获取所有子节点,可设置过滤,以下查找节点返回的均是jq对象
parent() 获取当前jq对象的父元素,parents()获取所有父元素,可以传入一个字符串过滤
find() 查找元素,可以传入一个字符串过滤
next()和prev() 获取后一个和前一个元素
siblings() 获取全部兄弟姐妹
on()和off() 处理事件 on的第二个参数可以使用事件委托,只处理第二个参数传递的选择器子元素
prepend() 将指定元素添加到当前元素的第一个元素
after() 在节点之后追加同级元素
insertAfter() 在参数后插入元素
remove() 删除一个节点
empty() 删除节点的内容

动画方法

方法 描述
show() 和hide()使元素显示或隐藏,传入一个毫秒参数
fadeIn() 和fadeOut()以透明度形式显示或隐藏
slideUp() 和slideDowm()以拉窗帘形式显示或隐藏
animate() 传入一个js对象和毫秒数
stop() 停止当前动画队列中的正在执行的动画,如果参数为true则停止所有动画

AJAX

1
2
3
4
5
6
7
$.ajax(
{ type:'get',
url:'....' }
).done(function(resp)){
}.fail(function());
/*如果url是json文件则resp是一个js对象,否则需要用JSON.parse解析文本*/


jQuery 自定义插件

解决命名空间冲突的方法是定义一个自调用函数,参数传入jQuery,形参使用$,解决了$被占用的问题
添加自定义插件的方法:

1
2
3
4
5
$.fn.extend({
method:function(){
...
}
})

自定义插件的函数里最后要返回jq对象,以满足jq的链式调用,(注意直接返回this,而不是$(this)因为调用jq方法的就是jq对象)自定义插件函数里的this指向$选择器获取的所有元素的伪数组
方法里使用 each()遍历所有元素,参数是一个回调函数,有2个参数,index和el,其中index为索引,el为当前元素的dom对象,也就是this,但使用时需要转换成jq对象


注意事项

jq中的$(this)指向jQuery对象,而this指向dom对象

$()的第二个参数是作用域,默认指向了document,可以指定某个元素

使用checkbox时要用prop()获取属性不能使用attr(),attr()中的checked只标识了html中的checked属性

mouseenter() 与 mouseleave()只在穿过该元素时触发,可以避免像mouseover触发子元素事件

jq获取offset长度使用outerWidth()和outerHeight()方法 获取页面宽度直接$(window).width()

jq的页面的contextmenu事件要用body