1.入口函數
? ? ? ? -`$(function () {} )`
? ? ? ? -`$(document).ready(funtion ())`
? ? ? ? -`$().ready(funtion ())`
注:一個頁面可以寫多個入口函數编检。
2.jquery對象和dom對象
1.jquery只能調用jquery對象里面的API,dom 對象只能調用dom 對象里面的屬性API
2.jquery可以轉換成dom對象钦睡,然后調用dom對象里面的屬性或者api
????????-第一種轉換方式:`$dom[0]`
????????-第二種轉換方式:`$dom.get(index)`
3.dom對象轉換成jquery對象拾氓,然后就可以調用jquery里面的屬性及API
????????-`var? $dom=$(dom)`
3.選擇器
? ? ? ? 1.基本選擇器
? ? ? ? ? ? ? ? -id選擇器 ------ 以#開頭,例:`$('#id')`
? ? ? ? ? ? ? ? -class選擇器------以 .? 開頭鲁冯,例:`$('.class')`
? ? ? ? ? ? ? ? -標簽選擇器------以標簽名開頭,例:`$('div')`
? ? ? ? ? ? ? ? -交集選擇器------例:`$('li.item')` //獲取所有l(wèi)i机错,并且他的class值是item
? ? ? ? ? ? ? ? -并集選擇器-----例:`$(div,p)`? //獲取所有的div及p
? ? ? ? 2.過濾選擇器
? ? ? ? ? ? ? ? -$("div:first")? ? ?第一個div元素
? ? ? ? ? ? ? ? -$("div:last")? ? ?最后一個div元素
? ? ? ? ? ? ? ? -$("li:first-Child")? ? li的第一個子元素
? ? ? ? ? ? ? ? -$("li:even")? ? ? ? 所有偶數的li元素
? ? ? ? ? ? ? ? -$("li:odd")??????????所有奇數的li元素
? ? ? ? ? ? ? ? -$("li:eq(3)")? ? ? ? li標簽的第3個元素
? ? ? ? 3.屬性操作器
? ? ? ? ? ? ? ? -$("input[type]")????所有input帶有 type 屬性的元素
? ? ? ? ? ? ? ? -$("input[type=button]")????所有input 帶有type屬性的值等于 "button" 的元素
? ? ? ? ? ? ? ? -$("input[type^=but]")????所有input帶有type屬性的值以 "but" 開頭的元素
? ? ? ? ? ? ? ? -$("div[class$=tiv]")????所有div帶有class屬性的值以 "tiv" 結尾的元素
? ? ? ? ? ? ? ? -$("div[class*=active]")????所有div帶有class屬性的值只要包含 "active" 的元素
4.jquery動畫
????????1.show()? ? ? hide()? ? ? ? 顯示隱藏
? ? ? ? 2.fadeIn()? ? fadeOut()? ? 淡入淡出
? ? ? ? 3.slideUp()? ? slideDown()? ? 向上卷曲偏螺,向下展開
? ? ? ? 4.fadeTo()? ? 透明度? ????底層操作是:opacity
? ? ? ? 5.自定義動畫:animate
? ? ? ? ? ? ? ? ? ? 1.第一個參數:形成動畫的CSS屬性(必要)
? ? ? ? ? ? ? ? ? ? 2.第二個參數:動畫的時長,可選值:“slow”叼架,“fast ” 或者毫秒?
? ? ? ? ? ? ? ? ? ? 3.第三個參數:動畫完成后執(zhí)行的函數 (可選)
5.事件綁定
? ? ? ? 1.直接在當前元素上面添加一個事件方法 click()? mouseover() 來綁定事件
? ? ? ? 2.bind("click mouseover",function(){})
? ? ? ? 3.delegate("p","click",function(){})
? ? ? ? 4.on("click","p",function(){})
總結:
click() 不加參數可以觸發(fā)當前元素上面的點擊事件
bind 可以給當前元素綁定多個事件
delegate 只能給子元素委派事件畔裕,可以委派多個事件
on 可以給當前元素自己綁定事件
也可以給當前元素下面的子元素委派事件?
6.拓展
? ? ? ? 1.多庫共存:因為一個頁面可能用到多個框架衣撬,其他框架也有$這個對象,就會跟jquery的$沖突扮饶。
????????????????解決方法:通過jQuery.noConflict()交還$和jQuery對象的控制權,解決命名控件沖突的問題
? ? ? ? ? 2.拓展jquery方法:$.fn.countdown 為擴展jquery方法具练,函數名為countdown