今天剛學習JQ。有個地方不是很理解:?在JS中var a=1;var b=2;a=b;輸出/2?這里的a是被b覆蓋的?然后我在JQ中看到這個 var div = document.getElementsByTagName('div'); //dom對象? ? ? ? ? ? var $div = $('div'); ? ?//將dom節(jié)點div轉(zhuǎn)化為$div的jquery對象? ? ? ? ? ? // $div = ??? ? ? ? ? ? var div = $div; var $first = $div.first(); //找到第一個div元素 $first.css('color', 'red'); //給第一個元素設(shè)置顏色這里的var div = document.getElementsByTagName('div'); //dom對象去掉后代碼依然有效。并且沒有報錯;那么問題來了:這里的div被$div覆蓋后,是JS中的對象還是JQ的對象?亦或者JS跟JQ不分彼此,只是區(qū)分DOM跟JQ?
1 回答

stone310
TA貢獻361條經(jīng)驗 獲得超191個贊
jq本來就是用JS寫的,在jq中$("div")實際上是一個json格式,
{0:div,1:div,2:div....}
而JS中document.getElementsByTagName('div')是個類數(shù)組;
[div,div,div]
所以JQ的選擇器只能用JQ的方法,JS的選擇器只能用JS的方法