摘要:對(duì)于早期版本,方法用于直接附加一個(gè)事件處理程序到元素上。處理程序附加到對(duì)象中當(dāng)前選中的元素,所以,在綁定事件的時(shí)候,這些元素必須已經(jīng)存在。重繪不會(huì)帶來(lái)重新布局,并不一定伴隨重排。重排是更明顯的一種改變,可以理解為渲染樹(shù)需要重新計(jì)算。
本期問(wèn)題
1.jquery中bind、on和delegate有什么區(qū)別?
答:先來(lái)看看css88上API的定義:
on在選定的元素上綁定一個(gè)或多個(gè)事件處理函數(shù)。在1.7版本中,on方法提供綁定事件處理的所有功能。
bind對(duì)于早期版本,.bind()方法用于直接附加一個(gè)事件處理程序到元素上。處理程序附加到j(luò)Query對(duì)象中當(dāng)前選中的元素,所以,在.bind()綁定事件的時(shí)候,這些元素必須已經(jīng)存在。
delegate 為所有匹配選擇器(selector參數(shù))的元素綁定一個(gè)或多個(gè)事件處理函數(shù),基于一個(gè)指定的根元素的子集,匹配的元素包括那些目前已經(jīng)匹配到的元素,也包括那些今后可能匹配到的元素。
所以說(shuō),on相當(dāng)于bind和delegate的合集。
2.標(biāo)簽中defer和async屬性的作用是什么?他們有什么區(qū)別?
答:首先看一張圖:
從上圖可以看出:
帶有defer和async屬性的script標(biāo)簽與后續(xù)的文檔加載是并行執(zhí)行的,也就是異步。而帶有defer屬性的js文件要在所有元素解析完、DOMCotentLoad之前完成。
async是加載完立即執(zhí)行。
3.下面這段代碼在XHTML中能順利運(yùn)行嗎?如果不能?如何解決?
答:不能。應(yīng)將小于號(hào)變?yōu)?b><
4.請(qǐng)說(shuō)出下方腳本的執(zhí)行結(jié)果:
var a= 1, b=2; function c(){ alert("c1") } function test(){ alert(a); alert(b); c(); function b(){ return 0 } var a= 5, b=6; function c(){ alert("c2") } } test();
答:undefined、function b(){return 0}、c2.不知道該怎么解釋?zhuān)胁幻靼椎恼?qǐng)留言。
5.下述腳本能正確alert出2么?如果不行請(qǐng)寫(xiě)出解決方案:
for(var i= 0,l=10,obj=[];i<=l;i++){ obj[i] = function(){ alert(i); }; } obj[2]()
答:不能。會(huì)alert11。用閉包。
6.請(qǐng)說(shuō)出下方腳本執(zhí)行結(jié)果:
var array = [1, 2]; deal(array, array); function deal(arrA, arrB){ arrA = [3, 4]; console.log(array[1]); //打印出什么內(nèi)容? arrB[1] = 9; console.log(array[1]); //打印出什么內(nèi)容? }
答:2,9。可參考知乎上的這個(gè)答案:數(shù)組賦值的問(wèn)題
7.如何將參數(shù)從一個(gè)函數(shù)傳遞到另一個(gè)函數(shù)?請(qǐng)寫(xiě)出實(shí)現(xiàn)代碼。
答:閉包。
8.原生ajax的創(chuàng)建過(guò)程?
var xmlHttp=new XMLHttpRequest(); xmlHttp.open("GET",url); xmlHttp.send(); xmlHttp.onreadystatechange=function(){ if(xmlHttp.readystate==4&&xmlHttp.status=200){ //success } }
9.解釋一下重繪和重排?
答:
重繪是一個(gè)元素外觀(guān)的改變所觸發(fā)的瀏覽器行為,例如改變visibility、outline、背景色等屬性。瀏覽器會(huì)根據(jù)元素的新屬性重新繪制,使元素呈現(xiàn)新的外觀(guān)。重繪不會(huì)帶來(lái)重新布局,并不一定伴隨重排。
重排是更明顯的一種改變,可以理解為渲染樹(shù)需要重新計(jì)算。下面是常見(jiàn)的觸發(fā)重排的操作:1. DOM元素的幾何屬性變化、 2. DOM樹(shù)的結(jié)構(gòu)變化、3. 獲取某些屬性
10.querySelector存在什么問(wèn)題?
答:
兼容性。IE8+
對(duì)瀏覽器支持的選擇器,它只是選擇性支持。
getElementBy系列的執(zhí)行速度基本都是querySelectorAll的100+倍
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/78800.html
摘要:對(duì)于早期版本,方法用于直接附加一個(gè)事件處理程序到元素上。處理程序附加到對(duì)象中當(dāng)前選中的元素,所以,在綁定事件的時(shí)候,這些元素必須已經(jīng)存在。重繪不會(huì)帶來(lái)重新布局,并不一定伴隨重排。重排是更明顯的一種改變,可以理解為渲染樹(shù)需要重新計(jì)算。 本期問(wèn)題 1.jquery中bind、on和delegate有什么區(qū)別? 答:先來(lái)看看css88上API的定義: on在選定的元素上綁定一個(gè)或多個(gè)事件處...
摘要:對(duì)于早期版本,方法用于直接附加一個(gè)事件處理程序到元素上。處理程序附加到對(duì)象中當(dāng)前選中的元素,所以,在綁定事件的時(shí)候,這些元素必須已經(jīng)存在。重繪不會(huì)帶來(lái)重新布局,并不一定伴隨重排。重排是更明顯的一種改變,可以理解為渲染樹(shù)需要重新計(jì)算。 本期問(wèn)題 1.jquery中bind、on和delegate有什么區(qū)別? 答:先來(lái)看看css88上API的定義: on在選定的元素上綁定一個(gè)或多個(gè)事件處...
摘要:堅(jiān)持就是勝利養(yǎng)成好習(xí)慣從每日一練開(kāi)始做起通過(guò)一個(gè)月的努力,終于迎來(lái)了我們每日一練的榜單讓我們一起看看都有哪些博主你在不在其中榜單揭曉請(qǐng)看獲獎(jiǎng)博主昵稱(chēng)阿年嗯啊猿碼叔叔雪離話(huà)丶小輝獎(jiǎng)品展示度暖暖恒溫 堅(jiān)持就是勝利!養(yǎng)成好習(xí)慣從每日一練開(kāi)始做起~ 通過(guò)一個(gè)月的努力,終于迎來(lái)了我們每日一練的TOP1...
摘要:?jiǎn)栴}在每日一練中介紹了如何一個(gè)可迭代對(duì)象,使用運(yùn)算符即可但往往我們遇到的問(wèn)題是可迭代對(duì)象中的數(shù)量是不確定的這個(gè)時(shí)候該如何拿到我們想要的元素,比如我們只需要可迭代對(duì)象的第一個(gè)或者最后一個(gè)元素而已解決方案使用中的運(yùn)算符例如我們需要拿到一個(gè)元組的 問(wèn)題 在每日一練0001中介紹了如何unpack一個(gè)可迭代對(duì)象,使用,運(yùn)算符即可 但往往我們遇到的問(wèn)題是可迭代對(duì)象中的數(shù)量是不確定的 這個(gè)時(shí)候該如...
摘要:?jiǎn)栴}為什么返回的是討論這是我在上發(fā)現(xiàn)的一個(gè)有趣的問(wèn)題,這個(gè)問(wèn)題可以簡(jiǎn)單的用一張圖解釋因?yàn)樽詈笠粋€(gè)字母最后或者第一個(gè)字母之前也包含了一個(gè)空的字符串,所以算出來(lái)是個(gè)但更有趣的是,返回的是這就延伸出來(lái)兩個(gè)哲學(xué)問(wèn)題來(lái)源關(guān)注歡迎關(guān)注我的微信公眾號(hào)每日 問(wèn)題 為什么test.count()返回的是5? >>> test.count() 5 討論 這是我在StackOverflow上發(fā)現(xiàn)的一個(gè)有趣的...
閱讀 1603·2023-04-26 01:54
閱讀 1634·2021-09-30 09:55
閱讀 2654·2021-09-22 16:05
閱讀 1872·2021-07-25 21:37
閱讀 2631·2019-08-29 18:45
閱讀 1895·2019-08-29 16:44
閱讀 1893·2019-08-29 12:34
閱讀 1356·2019-08-23 14:02