1.jQuery 樣式操作
1. 1jQuery 操作css的方法
1.1.1 添加行內(nèi)樣式:$('h4').css('color','red')
1.1.2?添加多個(gè)行內(nèi)樣式:$('h4').css({'color','red','border'})
注:添加行內(nèi)樣式直接獲取到需要添加的標(biāo)簽,在后面加上css部分即可,css內(nèi)樣式需用''包括胆建,用逗號(hào)隔開(kāi)
1.1.3?$.each(要遍歷的對(duì)象糙及,回調(diào)函數(shù)陶贼,兩個(gè)形參邀杏,第一個(gè)形參是索引肃拜,第二個(gè)形參是值) jQuery提供的遍歷方法
1.2?設(shè)置類(lèi)樣式方法(添加垛贤,刪除,切換)(add,remove阁猜,toggle)
2. jQuery 屬性操作
jQuery 常用屬性操作有三種:prop() / attr() / data() ;
2.1 元素固有屬性值 prop()
prop():操作標(biāo)簽固有的屬性丸逸,例如herf,src剃袍,type..黄刚。傳一個(gè)參(屬性名).獲取該屬性的屬性值。傳兩個(gè)參(屬性名.屬性值)設(shè)置該屬性為指定屬性值
獲取屬性語(yǔ)法:prop("屬性")
設(shè)置屬性語(yǔ)法:prop("屬性"民效,"屬性值?" )
注:prop()相對(duì)普通屬性的操作憔维,更適合操作表單屬性
2.2元素自定義屬性值 attr()
attr():操作標(biāo)簽的自定義屬性,除了操作自定義屬性標(biāo)簽固有屬性畏邢,除了(checked,disabled,selected,autofocus...這些值為布爾類(lèi)型的屬性)也可以操作业扒,傳參同上
獲取屬性語(yǔ)法:attr("屬性")? //類(lèi)似原生的getattribute()
設(shè)置屬性語(yǔ)法:attr("屬性",?"屬性值"?)? //類(lèi)似原生的setattribute()?
注:attr()相對(duì)普通屬性的操作,更適合操作自定義屬性
2.3 有關(guān)data
data方法舒萎,自定義屬性凶赁,并不會(huì)顯示在html結(jié)構(gòu)里
附加數(shù)據(jù)語(yǔ)法:data("name","value")//向背選取的元素附加數(shù)據(jù)
獲取數(shù)據(jù)語(yǔ)法:data("name")? //向被選取元素獲取數(shù)據(jù)
注意:還可以讀取 HTML5 自定義屬性 data-index ,得到的是數(shù)字型
3. jQuery 文本操作
jQuery的文本屬性值常見(jiàn)操作有三種:html() / text() / val() ; 分別對(duì)應(yīng)JS中的 innerHTML 逆甜、innerText 和 value 屬性
3.1?普通元素內(nèi)容html,相當(dāng)于原生innerHTML
html()? //獲取元素內(nèi)容
html("內(nèi)容")? //設(shè)置元素內(nèi)容
3.2text():獲取設(shè)置文本標(biāo)簽內(nèi)容致板,傳值同上交煞,相當(dāng)于原生innerText
text()? //獲取元素的文本內(nèi)容
text("內(nèi)容")? //設(shè)置元素的文本內(nèi)容
3.3val():獲取,設(shè)置表單標(biāo)簽的value屬性斟或。不傳值:獲取value屬性值素征。傳值,設(shè)置value屬性值,相當(dāng)于原生value
val()? // 獲取表單的值
val("內(nèi)容")? // 設(shè)置表單的值
4. jQuery 元素操作
用jQuery方法萝挤,操作標(biāo)簽的遍歷御毅、創(chuàng)建、添加怜珍、刪除等操作
4.1 遍歷元素
4.1.1??$(“div").each(function(index,domEle){}),each()方法遍歷匹配的每一個(gè)元素端蛆,主要用DOM處理,里面的回調(diào)函數(shù)有兩個(gè)參數(shù)酥泛,index是索引號(hào)今豆,domEle是每個(gè)DOM元素對(duì)象,不是jQuery對(duì)象柔袁,要使用jQuery方法呆躲,要把這個(gè)DOM元素轉(zhuǎn)化為jQuery對(duì)象$(domEle)
4.1.2? $.each(object,function(index,element{})$each()方法課用于遍歷所有對(duì)象,主要用于數(shù)據(jù)處理捶索,比如數(shù)組插掂,對(duì)象,里面的兩個(gè)參數(shù):index是索引號(hào),element遍歷內(nèi)容?
4.2 創(chuàng)建元素
以創(chuàng)建一個(gè)li為例:$("<li></li>")
4.3? 添加元素
4.3.1? 內(nèi)部添加:最后追尾添加:element.append("內(nèi)容")辅甥;開(kāi)頭添加:emelent.prepend("內(nèi)容")
4.3.2? 外部添加:目標(biāo)元素后添加:element.after("內(nèi)容")酝润;目標(biāo)元素前加:element.before("內(nèi)容")
注:區(qū)別在于內(nèi)部添加生成后元素為父子關(guān)系二外部添加生成后為兄弟關(guān)系
4.4 刪除元素
4.4.1??element.remove():刪除本身匹配的元素
4.4.2? element.empty():刪除匹配的元素集合中所有的子節(jié)點(diǎn),清空
4.4.3??element.html(""):清空匹配的元素內(nèi)容
4.4.4??empty與html("")的區(qū)別:empty為徹底清空肆氓,html后續(xù)還可以設(shè)置內(nèi)容
5. jQuery 尺寸位置操作
5.1?
?width袍祖、height 元素的寬高,只計(jì)算寬高
innerWidth谢揪、innerHeight 元素寬高 包含padding
outerWidth蕉陋、outerHeight 元素寬高 包含padding border
outerWidth(true)、outerHeight(true) 元素寬高拨扶,包含padding border margin
5.2??
offset():獲取目標(biāo)元素相對(duì)于文檔的距離凳鬓,也可以用來(lái)設(shè)置
position():獲取目標(biāo)元素相對(duì)于父元素的距離(translate,定位left/top,不包含內(nèi)外間距)只能獲取
scrollLeft():獲取目標(biāo)元素向左卷曲的值,可以設(shè)置卷取值
clone():復(fù)制節(jié)點(diǎn),如果傳true值患民,那么復(fù)制出的節(jié)點(diǎn)會(huì)包含原節(jié)點(diǎn)事件
scrolltop():獲取目標(biāo)元素向上卷曲的值缩举,可以設(shè)置卷取值
6. jQuery 節(jié)點(diǎn)操作
6.1? 創(chuàng)建節(jié)點(diǎn):document.createElement('li')
6.2? 放置節(jié)點(diǎn):
6.2.1??末尾追加:父節(jié)點(diǎn).append(新節(jié)點(diǎn));新節(jié)點(diǎn).appendTo(父節(jié)點(diǎn))
6.2.2??首位添加:父節(jié)點(diǎn).prepend(新節(jié)點(diǎn))匹颤;新節(jié)點(diǎn).prependTo(父節(jié)點(diǎn))
6.2.3?指定標(biāo)簽前一位:節(jié)點(diǎn).before(新節(jié)點(diǎn))
6.2.4 指定標(biāo)簽后一位:節(jié)點(diǎn).after(新節(jié)點(diǎn))
6.2.5?使用新節(jié)點(diǎn)替換指定節(jié)點(diǎn):舊節(jié)點(diǎn).replaceWith(新節(jié)點(diǎn))仅孩;新節(jié)點(diǎn).replaceAll(舊節(jié)點(diǎn))
6.3 刪除節(jié)點(diǎn)
6.3.1?remove():誰(shuí)調(diào)用刪除誰(shuí)
6.3.2?empty():誰(shuí)調(diào)用清空誰(shuí)