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

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

為什么定義了全局變量title.play,stop在onload的匿名函數(shù)里不能用呢

var?data=['Phone5','Ipad','三星筆記本','佳能相機(jī)','惠普打印機(jī)','謝謝參與','50元充值卡','1000元超市購(gòu)物券'],
????timer=null,
????flag=0,
????title=document.getElementById('title'),
????play=document.getElementById('play'),
????stop=document.getElementById('stop');
window.onload=function?()?{
????//?vartitle=document.getElementById('title'),
????//?play=document.getElementById('play'),
????//?stop=document.getElementById('stop');
????//鼠標(biāo)點(diǎn)擊開始抽獎(jiǎng)
????play.onclick=playFun;
????stop.onclick=stopFun;
????//回車鍵開始抽獎(jiǎng)
????document.onkeyup=function(event){
????????event=event||window.event;
????????if?(event.keyCode==13)?{
????????????if?(flag==0)?{?playFun();}?
????????????else?{?stopFun();?}
????????}
????}
????function?playFun()?{
????????//setInterval計(jì)時(shí)器,每50毫秒執(zhí)行一次函數(shù)
????????clearInterval(timer);??//停止計(jì)時(shí)器
????????timer=setInterval(function(){
????????????var?random=Math.random(),??//0-1隨機(jī)數(shù)
????????????num=Math.floor(random*data.length);??//給范圍向下取整
????????????title.innerHTML=data[num];??//給標(biāo)題賦值
????????},50);
????????play.style.backgroundColor="#eee";
????????play.style.color="#aaa";
????????play.style.cursor="default";
????????stop.style.backgroundColor="#19448e";
????????stop.style.color="#fff";
????????stop.style.cursor="pointer";
????????flag=1;
????}
????function?stopFun()?{
????????clearInterval(timer);
????????play.style.backgroundColor="#19448e";
????????play.style.color="#fff";
????????play.style.cursor="pointer";
????????stop.style.backgroundColor="#eee";
????????stop.style.color="#aaa";
????????stop.style.cursor="default";
????????flag=0;
????}
}


正在回答

3 回答

通俗說就是window.onload就是頁(yè)面加載后里面的函數(shù)都開始啟用了。全局變量慢了一步了。onload里面的函數(shù)要用變量的時(shí)候卻找不到。

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

你要知道window.onload是做什么用的


當(dāng)頁(yè)面加載的時(shí)候可以調(diào)用某些函數(shù)
例如定義一個(gè)function act1(){
}
window.onload = act1;
在頁(yè)面加載的時(shí)候就可以調(diào)用函數(shù)act1了
還可以 window.onload = =function() { a(); ?b(); }
來(lái)調(diào)用多個(gè)方法


也就是說window.onload是頁(yè)面加載后調(diào)用函數(shù)用的,你的getElementById是用來(lái)獲取元素的,你獲取元素一般都是一個(gè)數(shù)組或者具體某個(gè)元素,要么封裝在變量里,你把它放在onload后面算是什么意思呢?他又不是函數(shù)

除非你這樣寫倒是可以

例如 ?function Id1(){

var id1=document.getElementById('SDLJF')

? id1.onclick=fnDown

//SDLJF是我隨便定義的一個(gè)ID名

}

window.onload=Id1 ?這時(shí)候也就可以當(dāng)成跟了一個(gè)getElementById了

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

能說具體點(diǎn)嗎?

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

KevinLL 提問者

我通俗點(diǎn)說 title=document.getElementById('title'), play=document.getElementById('play'), stop=document.getElementById('stop'); 這三行放在window.onload=function () {} 就能運(yùn)行; 定義全局變量就不能運(yùn)行; 是什么原因
2016-07-30 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

為什么定義了全局變量title.play,stop在onload的匿名函數(shù)里不能用呢

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

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

幫助反饋 APP下載

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

公眾號(hào)

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