第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

為什么這么寫提交上去表格直接就是紅色?

? ? window.onload = function(){

? ? ? ? trlist=document.getElementsByTagName("tr");

? ? ? ? for(var i=0;i<trlist.length;i++){

? ? ? ? ?trlist[i].onmouseover=bgcChange(trlist[i]);

? ? ? ? ?trlist[i].onmouseout=function(){this.style.backgroundColor="#fff"}

? ? ? ? }

}

? ? function bgcChange(a){

? ? ? ? a.style.backgroundColor="red";

? ? }



正在回答

4 回答

如果直接這么寫:

trlist[i].onmouseover=bgcChange(trlist[i]);

這里bgcChange是一個(gè)自執(zhí)行函數(shù),而并不是事件函數(shù),因此一加載頁(yè)面就會(huì)執(zhí)行;

但也不能這么寫:

trlist[i].onmouseover=function(){
????bgcChange(trlist[i]);???//改成:bgcChange(this);?
}

這么也i值為定數(shù)(i為trlist.length),因此要寫成你的mouseout事件的格式,用this.

1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

stone310

這里this表示當(dāng)前觸發(fā)事件的對(duì)象,例如鼠標(biāo)移到第一個(gè) ,this就是trlist[0],移到第二個(gè),this就是trlist[1]...
2016-10-30 回復(fù) 有任何疑惑可以回復(fù)我~
#2

林鴻伯3985306 提問(wèn)者

恩 ,下面這個(gè)我也寫過(guò)。。 這個(gè)循環(huán)是不是在頁(yè)面加載完以后就已經(jīng)停在i=3了? 我再看看書。。
2016-10-30 回復(fù) 有任何疑惑可以回復(fù)我~
#3

stone310 回復(fù) 林鴻伯3985306 提問(wèn)者

循環(huán)加載完后,i為trlist.length
2016-10-30 回復(fù) 有任何疑惑可以回復(fù)我~
#4

林鴻伯3985306 提問(wèn)者

非常感謝!
2016-10-30 回復(fù) 有任何疑惑可以回復(fù)我~
查看1條回復(fù)

方便把全部代碼貼出來(lái)嗎


0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

林鴻伯3985306 提問(wèn)者

這就是全部代碼了,你貼上去就會(huì)發(fā)現(xiàn)全是紅的,鼠標(biāo)移過(guò)去紅色消失,我覺(jué)得是前半句(trlist[i].onmouse=)直接被忽略了,只執(zhí)行了函數(shù)bgcChange(trlist[i]);
2016-10-30 回復(fù) 有任何疑惑可以回復(fù)我~

this就是代表trlist[i],然后this.style.backgroundColor=“red”就是直接給他們每一個(gè)都設(shè)置了顏色!

function bgcChange(a){

? ? ? ? a.style.backgroundColor="red";

? ? }

這個(gè)函數(shù)和

?trlist[i].onmouseout=function(){this.style.backgroundColor="#fff"}只要一個(gè)就好了

你用了兩種方法設(shè)置了顏色

1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

林鴻伯3985306 提問(wèn)者

沒(méi)有重復(fù),一個(gè)設(shè)置的onmouseover ,另一個(gè)設(shè)置的onmouseout, 這樣寫只是為了看看哪個(gè)出問(wèn)題了。 我現(xiàn)在的問(wèn)題就是用trlist[i].onmouseout=function(){this.style.backgroundColor="#fff"}設(shè)置屬性 是可以等到事件發(fā)生再響應(yīng)的 ,如果用 function bgcChange(a)設(shè)置,它直接在頁(yè)面加載的時(shí)候直接把顏色全填上去了,沒(méi)法響應(yīng)。
2016-10-29 回復(fù) 有任何疑惑可以回復(fù)我~

因?yàn)閣indow.onload意思就是頁(yè)面一加載就運(yùn)行!bgcChange(trlist[i]);調(diào)用了函數(shù)? function bgcChange(a)所以為紅色

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

林鴻伯3985306 提問(wèn)者

那為什么trlist[i].onmouseover=function(){this.style.backgroundColor="red"}這種寫法就可以了?
2016-10-29 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

為什么這么寫提交上去表格直接就是紅色?

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)