問下script放在body里面和放在下面的區(qū)別?
如果要是像老師那樣把script放在下面的話,程序順利執(zhí)行。
但是想把script放在head里面用window.onload的話,程序就報錯說ScrollUp沒有定義,如下面的代碼:
window.onload=function(){ var?area?=?document.getElementById('moocBox'), con1?=?document.getElementById('con1'), con2?=?document.getElementById('con2'); var?time?=?10; con2.innerHTML?=?con1.innerHTML; var?timer?=?null; area.onmouseover=function(){ timer=setInterval('scrollUp()',time); } area.onmouseout=function(){ clearInterval(timer); } function?scrollUp(){ if?(area.scrollTop?>=?con1.offsetHeight)?{ area.scrollTop?=?0; }?else?{ area.scrollTop++; } } }
但是如果把scrollUp寫在window.onload外面就可以了,像下面這樣:
window.onload?=?function()?{ var?area?=?document.getElementById('moocBox'), con1?=?document.getElementById('con1'), con2?=?document.getElementById('con2'); var?time?=?10; con2.innerHTML?=?con1.innerHTML; var?timer?=?null; area.onmouseover?=?function()?{ timer?=?setInterval('scrollUp()',?time); } area.onmouseout?=?function()?{ clearInterval(timer); } } function?scrollUp()?{ var?area?=?document.getElementById('moocBox'), con1?=?document.getElementById('con1'), con2?=?document.getElementById('con2'); if?(area.scrollTop?>=?con1.offsetHeight)?{ area.scrollTop?=?0; }?else?{ area.scrollTop++; } }
這是為什么?
2016-02-21
onload在真?zhèn)€頁面加載完成之后就會執(zhí)行,如果將代碼放在body里,在加載頁面時函數(shù)已經(jīng)加載。如果將代碼放到head里,代碼在頁面加載時不會加載,直到整個頁面加載完成之后才執(zhí)行。此時scrollUp函數(shù)在調(diào)用處的后面。就會先報錯吧。
2017-08-15
我也沒聽懂
2016-05-19
說的啥意思