ps:LZ覺(jué)得這個(gè)標(biāo)題有點(diǎn)大了,超出了能力范圍,不喜勿碰。目前只記錄LZ能力范圍內(nèi)的,日后持續(xù)補(bǔ)充。
一、JQuery對(duì)象和DOM對(duì)象的相互轉(zhuǎn)化(《鋒利的JQuery》)
JQuery轉(zhuǎn)化為DOM:
1、var jq = $(‘#selector'); var dom = jq[index];
2、var jq1 = $(‘#selector1'); var dom1 = jq1.get(index) 或者 var dom1 = jq1.get()[index];
DOM轉(zhuǎn)化為JQuery:
假設(shè)cr是一個(gè)DOM對(duì)象,轉(zhuǎn)為JQuery,jqcr = $(‘cr');
二、JQuery的$(document).ready()和JavaScript的window.onload()的區(qū)別(《鋒利的JQuery》)
1、執(zhí)行時(shí)機(jī)
window.onload必須等待網(wǎng)頁(yè)中所有資源(包括圖片)加載完成后才能執(zhí)行,而$(document).ready()在所有DOM結(jié)構(gòu)繪制完畢后就執(zhí)行,但是可能與DOM相關(guān)聯(lián)的資源還沒(méi)有加載完畢。
2、編寫個(gè)數(shù)
一個(gè)文檔中,window.onload只有是一個(gè),而$(document).ready()可以有多個(gè)
3、簡(jiǎn)化方法
window.onload沒(méi)有簡(jiǎn)寫形式,$(document).ready()可以簡(jiǎn)寫為$(function(){}).
三、JQuery和JavaScript中訪問(wèn)屬性名稱的區(qū)別(《JQuery實(shí)戰(zhàn)》)
JQuery規(guī)范名稱 DOM規(guī)范
cellspacing cellSpacing
class className
colspan colSpan
cssFloat IE中是styleFloat,其他瀏覽器是cssFloat
float IE中是styleFloat,其他瀏覽器是cssFloat
for htmlFor
frameborder frameBorder
maxLength maxLength
readonly readOnly
rowspan rowSpan
stylefloat IE中是styleFloat,其他瀏覽器是cssFloat
tabindex tabIndex
usemap useMap
四、沖突
DOM理論上不會(huì)有沖突產(chǎn)生,JQuery防止沖突產(chǎn)生的兩種解決方法:(《鋒利的JQuery》)
1、JQuery庫(kù)在其他庫(kù)之后導(dǎo)入
調(diào)用JQuery。noConflict()方法將$控制權(quán)給其他庫(kù)使用,或者自定義快捷方式,$j = JQuery.noConflict();
2、JQuery庫(kù)在其他庫(kù)之前導(dǎo)入
直接使用JQuery代替$工作,同時(shí)$可以作為其他庫(kù)的快捷方式。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注