2015-04-16 33 views
0

HTML:Javascript函數沒有定義和SyntaxError?

<html> 
<body> 
    <button onclick="bgTime()">CHANGE BACKGROUND</button> 
</body> 
    <script type="text/javascript" src="script.js"> 
    </script> 
</html> 

的JavaScript:

function bgTime() { 
    var d = new Date(); 
    if (d getHours() >= 21) { 
     document.body.style.backgroundImage = "url('bg/H.png')" 
    } 
    else if (d getHours() >= 18) { 
     document.body.style.backgroundImage = "url('bg/G.png')" 
    } 
    else if (d getHours() >= 15) { 
     document.body.style.backgroundImage = "url('bg/F.png')" 
    } 
    else if (d getHours() >= 12) { 
     document.body.style.backgroundImage = "url('bg/E.png')" 
    } 
    else if (d getHours() >= 9) { 
     document.body.style.backgroundImage = "url('bg/D.png')" 
    } 
    else if (d getHours() >= 6) { 
     document.body.style.backgroundImage = "url('bg/C.png')" 
    } 
    else if (d getHours() >= 3) { 
     document.body.style.backgroundImage = "url('bg/B.png')" 
    } 
    else { 
     document.body.style.backgroundImage = "url('bg/A.png')" 
    }; 
}; 

好了,所以我可能只是被莫名其妙的白癡,但我無法找到我在做什麼錯。我得到兩個錯誤:


1 「的script.js:3 |未捕獲的SyntaxError:意外的標識符」
2 「(指數):3 |的onclick |未捕獲的ReferenceError:未定義bgTime」
是否有人可以告訴我我做錯了什麼?先謝謝你!

P.S.這只是一個學習JS的項目,不要評判哈哈。

+5

是不是真的'd調用getHours()','不d.getHours()'? –

+0

我知道我只是啞巴哈哈謝謝你! –

+1

發生第一個錯誤,表明加載的JavaScript中存在問題;與該代碼中的問題,該功能不是「創建」,並提供您點擊時,因此第二個錯誤。 – rfornal

回答

2

d.getHours() 

getHours是被使用點.訪問的d的方法。

1

你忘了一段時間。它應該是: d.getHours() >= 21等等。 :)

1

您需要在您的所有if語句使用點表示法:

if (d.getHours() >= 21) { ... } 

bgTime沒有定義,因爲JS解釋不能解碼程序。一旦你修好你的if,一切都應該正常工作。


參考文獻: