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

為了賬號安全,請及時綁定郵箱和手機立即綁定

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

var?data=['Phone5','Ipad','三星筆記本','佳能相機','惠普打印機','謝謝參與','50元充值卡','1000元超市購物券'],
????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');
????//鼠標點擊開始抽獎
????play.onclick=playFun;
????stop.onclick=stopFun;
????//回車鍵開始抽獎
????document.onkeyup=function(event){
????????event=event||window.event;
????????if?(event.keyCode==13)?{
????????????if?(flag==0)?{?playFun();}?
????????????else?{?stopFun();?}
????????}
????}
????function?playFun()?{
????????//setInterval計時器,每50毫秒執(zhí)行一次函數(shù)
????????clearInterval(timer);??//停止計時器
????????timer=setInterval(function(){
????????????var?random=Math.random(),??//0-1隨機數(shù)
????????????num=Math.floor(random*data.length);??//給范圍向下取整
????????????title.innerHTML=data[num];??//給標題賦值
????????},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就是頁面加載后里面的函數(shù)都開始啟用了。全局變量慢了一步了。onload里面的函數(shù)要用變量的時候卻找不到。

1 回復 有任何疑惑可以回復我~

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


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


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

除非你這樣寫倒是可以

例如 ?function Id1(){

var id1=document.getElementById('SDLJF')

? id1.onclick=fnDown

//SDLJF是我隨便定義的一個ID名

}

window.onload=Id1 ?這時候也就可以當成跟了一個getElementById了

0 回復 有任何疑惑可以回復我~

能說具體點嗎?

0 回復 有任何疑惑可以回復我~
#1

KevinLL 提問者

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

舉報

0/150
提交
取消

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

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號