2016-09-11 27 views
0
このコードは JSFiddleに取り組んでいる

にヌルであるが、それはまた私のスクリプトでは動作しませんか?はTypeError:、私は私のミスです<a href="http://getfirebug.com/" rel="nofollow noreferrer">Firebug</a></p> <p>と、このエラーが出るのdocument.getElementById(...)は、JavaScriptの

TypeError: document.getElementById(...) is null

document.getElementById("image").onclick = function() { 
    if (this.src == "https://i.stack.imgur.com/5FoXm.png?s=48&g=1") { 
    this.src = "https://i.stack.imgur.com/EoD62.jpg?s=32&g=1"; 
    } else { 
    this.src = "https://i.stack.imgur.com/5FoXm.png?s=48&g=1"; 
    } 
}; 
+3

DOM準備が整う前にコードを実行しているのでしょうか? –

+0

Bartoszが言ったことを詳述するために、画像のHTMLの前にスクリプトが表示されていれば、それは機能しません。のタグの直前に、HTMLの一番下にスクリプトを移動してください(既にない場合)。 –

+0

@BartoszGościński絶対に!その作業は – Editor

答えて

0

あなたのコード内で二回行document.getElementById("image3").onclick = function() {を追加した2回目は名前がimag3eの代わりに、DOMに存在しないimage3であり、それはあなたがエラーを取得している理由である可能性があります。不要な行を削除し、次のコードを試してください。

document.getElementById("image").onclick = function() { 
    if (this.src == "https://i.stack.imgur.com/5FoXm.png?s=48&g=1") { 
    this.src = "https://i.stack.imgur.com/EoD62.jpg?s=32&g=1"; 
    } else { 
    this.src = "https://i.stack.imgur.com/5FoXm.png?s=48&g=1"; 
    } 
}; 
+0

です。 'image'私の質問は確定しました – Editor

+0

' document.getElementById( "image")という行.onclick = function(){'はまだ2度含まれています。そのうちの1つを削除してコードを実行してください – Joyson

+0

ありがとう、私は削除しました – Editor

1

</body> DOMの前に追加して作業しています。 @Bartosz Gościński - 私は彼のアイデアで問題を解決しました