首頁 > web前端 > js教程 > 主體

jQuery必須掌握的API

php中世界最好的语言
發布: 2018-03-15 17:40:36
原創
1628 人瀏覽過

這次帶給大家jQuery必須掌握的API,使用jQuery必須掌握的API的注意事項有哪些,以下就是實戰案例,一起來看一下。

其中包括jQuery 核心函數與方法、jQuery屬性參考手冊、jQuery CSS作業、jQuery選擇器、jQuery文件運算、jQuery篩選操作、jQuery事件方法、jQuery效果、jQuery Ajax作業、jQuery工具函數、 jQuery事件物件、jQuery延遲物件、jQuery回呼函數,歡迎收藏使用。

jquery核心函數

函数                 描述
jQuery()  这个函数接收一个包含 CSS 选择器的字符串,然后用这个字符串去匹配一组元素。
jQuery()1.8*  根据提供的原始 HTML 标记字符串,动态创建由 jQuery 对象包装的 DOM 元素。同时设置一系列的属性、事件等。
jQuery()  $(document).ready()的简写。
jQuery.holdReady()1.6+ 暂停或恢复.ready() 事件的执行。
each() 以每一个匹配的元素作为上下文来执行一个函数。
size() jQuery 对象中元素的个数。
length jQuery 对象中元素的个数。
selector  返回传给jQuery()的原始选择器。
context 返回传给jQuery()的原始的DOM节点内容,即jQuery()的第二个参数。如果没有指定,那么context指向当前的文档(document)。
get()  取得其中一个匹配的元素。 num表示取得第几个匹配的元素。
index() 搜索匹配的元素,并返回相应元素的索引值,从0开始计数。
data() 在元素上存放数据,返回jQuery对象。
removeData()1.7*  在元素上移除存放的数据
queue() 显示或操作在匹配元素上执行的函数队列
dequeue()  从队列最前端移除一个队列函数,并执行他。
clearQueue()  清空对象上尚未执行的所有队列
jQuery.fn.extend() 扩展 jQuery 元素集来提供新的方法(通常用来制作插件)。
jQuery.extend() 扩展jQuery对象本身。
jQuery.noConflict() 运行这个函数将变量$的控制权让渡给第一个实现它的那个库。
登入後複製

jQuery屬性

函数                描述
attr() 设置或返回被选元素的属性值。
removeAttr()  从每一个匹配的元素中删除一个属性
prop()1.6+ 获取在匹配的元素集中的第一个元素的属性值。
removeProp()1.6+  用来删除由.prop()方法设置的属性集
addClass() 为每个匹配的元素添加指定的类名。
removeClass()  从所有匹配的元素中删除全部或者指定的类。
toggleClass()  如果存在(不存在)就删除(添加)一个类。
html() 取得第一个匹配元素的html内容。这个函数不能用于XML文档。但可以用于XHTML文档。
text() 取得所有匹配元素的内容。
val()  获得匹配元素的当前值。
登入後複製

#jQuery CSS運算

下面列出的這些方法設定或傳回元素的CSS 相關屬性。

函数                 描述
css()1.9*  访问匹配元素的样式属性。
jQuery.cssHooks 直接向 jQuery 中添加钩子,用于覆盖设置或获取特定 CSS 属性时的方法,目的是为了标准化 CSS 属性名或创建自定义属性。
offset()  获取匹配元素在当前视口的相对偏移。
position() 获取匹配元素相对父元素的偏移。
scrollTop() 获取匹配元素相对滚动条顶部的偏移。
scrollLeft()  获取匹配元素相对滚动条左侧的偏移。
heigh() 取得匹配元素当前计算的高度值(px)。
width() 取得第一个匹配元素当前计算的宽度值(px)。
innerHeight()  获取第一个匹配元素内部区域高度(包括内边距、不包括边框)。
innerWidth()  获取第一个匹配元素内部区域宽度(包括内边距、不包括边框)。
outerHeight()  获取第一个匹配元素外部高度(默认包括内边距和边框)。
outerWidth()  获取第一个匹配元素外部宽度(默认包括内边距和边框)。
登入後複製

jQuery選擇器

函数                描述
#id 
element 
.class 
*  
selector1,selector2,selectorN  
ancestor descendant 
parent > child 
prev + next 
prev ~ siblings  
:first 
:not() 
:even  
:odd  
:eq()  
:gt()  
:lang1.9+  
:last  
:lt()  
:header 
:animated  
:focus1.6+ 
:root1.9+  
:target1.9+ 
:contains() 
:empty 
:has() 
:parent 
:hidden 
:visible  
[attribute] 
[attribute=value]  
[attribute!=value] 
[attribute^=value] 
[attribute$=value] 
[attribute*=value] 
[attrSel1][attrSel2][attrSelN] 
:first-child  
:first-of-type1.9+ 
:last-child 
:last-of-type1.9+  
:nth-child 
:nth-last-child()1.9+  
:nth-last-of-type()1.9+ 
:nth-of-type()1.9+ 
:only-child 
:only-of-type1.9+  
:input 
:text  
:password  
:radio 
:checkbox  
:submit 
:image 
:reset 
:button 
:file  
:hidden 
:enabled  
:disabled  
:checked  
:selected
登入後複製

jQuery文件運算##

函数                描述
append()  向每个匹配的元素内部追加内容。
appendTo() 把所有匹配的元素追加到另一个指定的元素元素集合中。
prepend()  向每个匹配的元素内部前置内容。
prependTo() 把所有匹配的元素前置到另一个、指定的元素元素集合中。
after() 在每个匹配的元素之后插入内容。
before()  在每个匹配的元素之前插入内容。
insertAfter()  把所有匹配的元素插入到另一个、指定的元素元素集合的后面。
insertBefore() 把所有匹配的元素插入到另一个、指定的元素元素集合的前面。
wrap() 把所有匹配的元素用其他元素的结构化标记包裹起来。
unwrap()  这个方法将移出元素的父元素。
wrapall()  将所有匹配的元素用单个元素包裹起来
wrapInner() 将每一个匹配的元素的子内容(包括文本节点)用一个HTML结构包裹起来
replaceWith()  将所有匹配的元素替换成指定的HTML或DOM元素。
replaceAll()  用匹配的元素替换掉所有 selector匹配到的元素。
empty() 删除匹配的元素集合中所有的子节点。
remove()  从DOM中删除所有匹配的元素。
detach()  从DOM中删除所有匹配的元素。
clone() 克隆匹配的DOM元素并且选中这些克隆的副本。
登入後複製

jQuery篩選動作

函数               描述
eq()  获取第N个元素
first() 获取第一个元素
last() 获取最后一个元素
hasClass() 检查当前的元素是否含有某个特定的类,如果有,则返回true。
filter()  筛选出与指定表达式匹配的元素集合。
is()1.6*  根据选择器、DOM元素或 jQuery 对象来检测匹配元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true。
map()  将一组元素转换成其他数组(不论是否是元素数组)
has()  保留包含特定后代的元素,去掉那些不含有指定后代的元素。
not()  删除与指定表达式匹配的元素
slice() 选取一个匹配的子集
children() 取得一个包含匹配的元素集合中每一个元素的所有子元素的元素集合。
closest()1.7*  从元素本身开始,逐级向上级元素匹配,并返回最先匹配的元素。。
find()1.6* 搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。
next() 取得一个包含匹配的元素集合中每一个元素紧邻的后面同辈元素的元素集合。
nextall()  查找当前元素之后所有的同辈元素。
nextUntil()1.6* 查找当前元素之后所有的同辈元素,直到遇到匹配的那个元素为止。
offsetParent() 返回第一个匹配元素用于定位的父节点。
parent()  取得一个包含着所有匹配元素的唯一父元素的元素集合。
parents()  取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。
parentsUntil()1.6* 查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止。
prev() 取得一个包含匹配的元素集合中每一个元素紧邻的前一个同辈元素的元素集合。
prevall()  查找当前元素之前所有的同辈元素
prevUntil()1.6* 查找当前元素之前所有的同辈元素,直到遇到匹配的那个元素为止。
siblings() 取得一个包含匹配的元素集合中每一个元素的所有唯一同辈元素的元素集合。可以用可选的表达式进行筛选。
add()  把与表达式匹配的元素添加到jQuery对象中。这个函数可以用于连接分别与两个表达式匹配的元素结果集。
andSelf()  加入先前所选的加入当前元素中
contents() 查找匹配元素内部所有的子节点(包括文本节点)。如果元素是一个iframe,则查找文档内容
end()  回到最近的一个"破坏性"操作之前。即,将匹配的元素列表变为前一次的状态。
登入後複製
登入後複製

#jQuery篩選運算

函数               描述
eq()  获取第N个元素
first() 获取第一个元素
last() 获取最后一个元素
hasClass() 检查当前的元素是否含有某个特定的类,如果有,则返回true。
filter()  筛选出与指定表达式匹配的元素集合。
is()1.6*  根据选择器、DOM元素或 jQuery 对象来检测匹配元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true。
map()  将一组元素转换成其他数组(不论是否是元素数组)
has()  保留包含特定后代的元素,去掉那些不含有指定后代的元素。
not()  删除与指定表达式匹配的元素
slice() 选取一个匹配的子集
children() 取得一个包含匹配的元素集合中每一个元素的所有子元素的元素集合。
closest()1.7*  从元素本身开始,逐级向上级元素匹配,并返回最先匹配的元素。。
find()1.6* 搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。
next() 取得一个包含匹配的元素集合中每一个元素紧邻的后面同辈元素的元素集合。
nextall()  查找当前元素之后所有的同辈元素。
nextUntil()1.6* 查找当前元素之后所有的同辈元素,直到遇到匹配的那个元素为止。
offsetParent() 返回第一个匹配元素用于定位的父节点。
parent()  取得一个包含着所有匹配元素的唯一父元素的元素集合。
parents()  取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。
parentsUntil()1.6* 查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止。
prev() 取得一个包含匹配的元素集合中每一个元素紧邻的前一个同辈元素的元素集合。
prevall()  查找当前元素之前所有的同辈元素
prevUntil()1.6* 查找当前元素之前所有的同辈元素,直到遇到匹配的那个元素为止。
siblings() 取得一个包含匹配的元素集合中每一个元素的所有唯一同辈元素的元素集合。可以用可选的表达式进行筛选。
add()  把与表达式匹配的元素添加到jQuery对象中。这个函数可以用于连接分别与两个表达式匹配的元素结果集。
andSelf()  加入先前所选的加入当前元素中
contents() 查找匹配元素内部所有的子节点(包括文本节点)。如果元素是一个iframe,则查找文档内容
end()  回到最近的一个"破坏性"操作之前。即,将匹配的元素列表变为前一次的状态。
登入後複製
登入後複製

#jQuery事件方法

函数              描述
ready() 当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。
on()1.7+  在选择元素上绑定一个或多个事件的事件处理函数。
off()1.7+  在选择元素上移除一个或多个事件的事件处理函数。
bind() 为每个匹配元素的特定事件绑定事件处理函数。
one()  为每一个匹配元素的特定事件(像click)绑定一个一次性的事件处理函数。
trigger()  在每一个匹配的元素上触发某类事件。
triggerHandler()  这个特别的方法将会触发指定的事件类型上所有绑定的处理函数。但不会执行浏览器默认动作,也不会产生事件冒泡。
unbind()  bind()的反向操作,从每一个匹配的元素中删除绑定的事件。
live()1.7- jQuery 给所有匹配的元素附加一个事件处理函数,即使这个元素是以后再添加进来的也有效。
die()1.7-  从元素中删除先前用.live()绑定的所有事件.(此方法与live正好完全相反。)
delegate() 指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
undelegate()1.6*  删除由 delegate() 方法添加的一个或多个事件处理程序。
hover() 一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法。
toggle()  用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件。
blur() 当元素失去焦点时触发 blur 事件。
change()  当元素的值发生改变时,会发生 change 事件。
click() 触发每一个匹配元素的click事件。
dblclick() 当双击元素时,会发生 dblclick 事件。
error() 当元素遇到错误(没有正确载入)时,发生 error 事件。
focus() 当元素获得焦点时,触发 focus 事件。
focusin()  当元素获得焦点时,触发 focusin 事件。
focusout() 当元素失去焦点时触发 focusout 事件。
keydown()  当键盘或按钮被按下时,发生 keydown 事件。
keypress() 当键盘或按钮被按下时,发生 keypress 事件。
keyup() 当按钮被松开时,发生 keyup 事件。它发生在当前获得焦点的元素上。
mousedown() 当鼠标指针移动到元素上方,并按下鼠标按键时,会发生 mousedown 事件。
mouseenter()  当鼠标指针穿过元素时,会发生 mouseenter 事件。该事件大多数时候会与mouseleave 事件一起使用。
mouseleave()  当鼠标指针离开元素时,会发生 mouseleave 事件。该事件大多数时候会与mouseenter 事件一起使用。
mousemove() 当鼠标指针在指定的元素中移动时,就会发生 mousemove 事件。
mouseout() 当鼠标指针从元素上移开时,发生 mouseout 事件。
mouseover() 当鼠标指针位于元素上方时,会发生 mouseover 事件。
mouseup()  当在元素上放松鼠标按钮时,会发生 mouseup 事件。
resize()  当调整浏览器窗口的大小时,发生 resize 事件。
scroll()  当用户滚动指定的元素时,会发生 scroll 事件。
select()  当 textarea 或文本类型的 input 元素中的文本被选择时,会发生 select 事件。
submit()  当提交表单时,会发生 submit 事件。
unload()  在当用户离开页面时,会发生 unload 事件。
登入後複製

jQuery效果

函数                 描述
show() 显示隐藏的匹配元素。
hide() 隐藏显示的元素
toggle()  用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件。
slideDown() 通过高度变化(向下增大)来动态地显示所有匹配的元素,在显示完成后可选地触发一个回调函数。
slideUp()  通过高度变化(向上减小)来动态地隐藏所有匹配的元素,在隐藏完成后可选地触发一个回调函数。
slideToggle()  通过高度变化来切换所有匹配元素的可见性,并在切换完成后可选地触发一个回调函数。
fadeIn()  通过不透明度的变化来实现所有匹配元素的淡入效果,并在动画完成后可选地触发一个回调函数。
fadeOut()  通过不透明度的变化来实现所有匹配元素的淡出效果,并在动画完成后可选地触发一个回调函数。
fadeTo()  把所有匹配元素的不透明度以渐进方式调整到指定的不透明度,并在动画完成后可选地触发一个回调函数。
fadeToggle()  通过不透明度的变化来开关所有匹配元素的淡入和淡出效果,并在动画完成后可选地触发一个回调函数。
animate()1.8*  用于创建自定义动画的函数。
stop()1.7* 停止所有在指定元素上正在运行的动画。
delay() 设置一个延时来推迟执行队列中之后的项目。
finish()1.9+  停止当前正在运行的动画,删除所有排队的动画,并完成匹配元素所有的动画。
jQuery.fx.off  关闭页面上所有的动画。
jQuery.fx.interval 设置动画的显示帧速。
登入後複製

jQuery ajax操作

函数          描述
$.ajax()  通过 HTTP 请求加载远程数据。
load() 载入远程 HTML 文件代码并插入至 DOM 中。
$.get()  通过远程 HTTP GET 请求载入信息。
$.getJSON()  通过 HTTP GET 请求载入 JSON 数据。
$.getScript() 通过 HTTP GET 请求载入并执行一个 JavaScript 文件。
$.post()  通过远程 HTTP POST 请求载入信息。
ajaxComplete() AJAX 请求完成时执行函数。Ajax 事件。
ajaxError() AJAX 请求发生错误时执行函数。Ajax 事件。
ajaxSend() AJAX 请求发送前执行函数。Ajax 事件。
ajaxStart() AJAX 请求开始时执行函数。Ajax 事件。
ajaxStop() AJAX 请求结束时执行函数。Ajax 事件。
ajaxSuccess()  AJAX 请求成功时执行函数。Ajax 事件。
$.ajaxPrefilter()	Handle custom Ajax options or modify existing options before each request is sent and before they are processed by $.ajax().
$.ajaxSetup() 设置全局 AJAX 默认选项。
serialize() 序列化表格内容为字符串。
serializearray()  序列化表格元素 (类似 '.serialize()' 方法) 返回 JSON 数据结构数据。
登入後複製

接下來,我們再給大家看jQuery常用語法及介面:

jQuery常用語法及介面

無論是寫程式還是看API文檔,要時時注意區分Dom物件和jQuery包裝集。

1. Dom物件

在傳統的JavaScript開發中,都是先取得Dom對象,例如:

var p = document.getElementById("testp"); 
var ps = document.getElementsByTagName("p");
登入後複製
使用document.getElementById方法根據id取得單一Dom對象,或使用document. getElementsByTagName方法根據HTML標籤名稱取得Dom物件集合。

另外,在事件函數中,可以透過在方法函數中使用this引用事件觸發對象,或是使用event對象的target(FF)或srcElement(IE6)來取得引發事件的Dom對象。

這裡取得的都是Dom對象,Dom物件也有不同的類型,如input、p、span等。 Dom物件只有有限的

屬性與方法

2. jQuery包裝集

jQuery包裝可以說是Dom物件的擴充。在jQuery的世界中將所有的對象,無論是一個還是一組,都封裝成一個jQuery包裝集,例如取得包含一個元素的jQuery包裝集:

var jQueryObject = $("#testp");
登入後複製
jQuery包裝集都是作為一個對象一起調用的。 jQuery包裝集擁有豐富的屬性與方法,jQuery特有的屬性與方法如圖6-3所示。

3. Dom物件與jQuery物件的轉換

(1)Dom轉jQuery包裝集

如果要使用jQuery提供的函數,首先就需要建構jQuery包裝集。可以使用本文即將介紹的jQuery選擇器直接建構jQuery包裝集,例如:

$("#testp");
登入後複製
上面語句建構的包裝集只含有一個id是testp的元素。或是已經取得了一個Dom元素,例如:

var p = document.getElementById("testp");
登入後複製
上面的程式碼中p是一個Dom元素,可以將Dom元素轉換成jQuery包裝集:

var domToJQueryObject = $(p);
登入後複製
(2)jQuery包裝集轉Dom物件

jQuery包裝集是一個集合,所以可以透過索引器存取其中的某一個元素:

var domObject = $("#testp")[0];
登入後複製
透過索引器傳回的不再是jQuery包裝集,而是一個Dom物件! jQuery包裝集的某些遍歷方法,例如each()中,可以傳遞遍歷函數,在遍歷函數中的this也是Dom元素,例如:

$("#testp").each(function() { alert(this) })
登入後複製
如果要使用jQuery的方法操作Dom對象,用上面介紹過的轉換方法即可:

$("#testp").each(function() { $(this).html("修改内容") })
登入後複製
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

aja的非同步上傳外掛程式

怎麼實作檔案上帶進度條動畫

jQuery實作多層驗證後的表單驗證

#用JQUERY實作多個AJAX請求同時等待

以上是jQuery必須掌握的API的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板