問題出在aaRoot.querySelector盡然還有返回值!因?yàn)樯舷挛牟檎业姆秶俗陨砹恕?br />
拋開IE8以下瀏覽器不說,現(xiàn)代瀏覽器也有這個(gè)問題,我覺得這樣的解釋更合理:
querySelector/querySelectorAll下(即是element.開頭,而不是document.)的CSS選擇器是絕對(duì)的。它們并不會(huì)相對(duì)于任何特定的元素,甚至不會(huì)相對(duì)于調(diào)用querySelectorAll的元素。
試下這倆看結(jié)果:
aaRoot.querySelector('.aaron span');
aaRoot.querySelector('div div');
拋開IE8以下瀏覽器不說,現(xiàn)代瀏覽器也有這個(gè)問題,我覺得這樣的解釋更合理:
querySelector/querySelectorAll下(即是element.開頭,而不是document.)的CSS選擇器是絕對(duì)的。它們并不會(huì)相對(duì)于任何特定的元素,甚至不會(huì)相對(duì)于調(diào)用querySelectorAll的元素。
試下這倆看結(jié)果:
aaRoot.querySelector('.aaron span');
aaRoot.querySelector('div div');
2017-08-21
最新回答 / daydaystudy
找到答案了,不包括自身。。。querySelector/querySelectorAll下的CSS選擇器是絕對(duì)的。它們并不會(huì)相對(duì)于任何特定的元素,甚至不會(huì)相對(duì)于調(diào)用querySelectorAll的元素
2017-08-21
內(nèi)存泄漏這東西學(xué)問和大了,不得看看瀏覽器GC算法,現(xiàn)代瀏覽器標(biāo)記-清除,IE6,7引用計(jì)數(shù) ,不得去看看常見的幾種內(nèi)存泄漏的常見,閉包,DOM對(duì)象的二次引用(大數(shù)據(jù)直接賦給DOM對(duì)象的屬性), 計(jì)時(shí)器,全局變量的創(chuàng)建等
2017-08-04
老師水平很高,不過確實(shí)有點(diǎn)自說自話。如果不是看過jQuery源碼,很難進(jìn)入情景
2017-07-31
核心就是jQuery.fn = jQuery.prototype = {init(){}}
而jQuery函數(shù)的返回值為 new jQuery.fn.init()
老師漏了一句,jQuery.fn.init.prototype = jQuery.prototype,如此一來,所有掛到j(luò)Query原型上的方法都會(huì)成為$()實(shí)例的方法。
而jQuery函數(shù)的返回值為 new jQuery.fn.init()
老師漏了一句,jQuery.fn.init.prototype = jQuery.prototype,如此一來,所有掛到j(luò)Query原型上的方法都會(huì)成為$()實(shí)例的方法。
2017-07-31
this.length=1
this[0]=elem
this.get=function(num){
return this[num]
}
在這基礎(chǔ)上其實(shí)還可以實(shí)現(xiàn)什么shift,push,pop,sort,map,這就是老師所說的類數(shù)組吧
實(shí)現(xiàn)push就需要每次this.length+1,實(shí)現(xiàn)map的方法是接受一個(gè)函數(shù)做參數(shù),遍歷數(shù)組,在每個(gè)元素上調(diào)用傳入的函數(shù),最后返回結(jié)果數(shù)組
this[0]=elem
this.get=function(num){
return this[num]
}
在這基礎(chǔ)上其實(shí)還可以實(shí)現(xiàn)什么shift,push,pop,sort,map,這就是老師所說的類數(shù)組吧
實(shí)現(xiàn)push就需要每次this.length+1,實(shí)現(xiàn)map的方法是接受一個(gè)函數(shù)做參數(shù),遍歷數(shù)組,在每個(gè)元素上調(diào)用傳入的函數(shù),最后返回結(jié)果數(shù)組
2017-07-23