2016-08-24 9 views
0

イメージ(id = "image1")と "a"タグ(id = "image1_tb")があります。イメージのクラス 私は他の画像を追加するつもりですので、私は「」タグのhref属性設定「のjavascript:changeClass(画像1)を」とこのようになりますジャバスクリプトザ・スクリプト作成:Uncaught TypeError:スクリプト実行時にヌルの 'className'プロパティを設定できません

function changeClass(id) { 
if (document.getElementById(id).className == 'swb') { 
document.getElementById(id).className = 'swthb'; 
document.getElementById(id+'_tb').innerHTML = 'Class 1' 
} else { 
document.getElementById(id).className = 'swb'; 
document.getElementById(id+'_tb').innerHTML = 'Class 2' 
} 
} 

が、テキストをクリックするか、Chromeのデベロッパーコンソールから呼び出すと、何も起こりません。コンソール出力に「Uncaught TypeError:nullのプロパティ 'className'を設定できません」と表示されます。手動で "id"を実際のイメージIDに置き換えると、それは機能します。 私は何が間違っていますか?

+1

@blex私が実際にそれを知っていたのは、コードを書いたときにタイプミスでした。 –

答えて

0

変更のhrefから:

javascript:changeClass(image1) 

へ:JavaScriptで引用符なし

javascript:changeClass('image1') 

あなたは変数を参照しようとしていることを意味します。 image1は以前に変数として定義されていなかったため、nullでdocument.getElementById(null)もnullです。

関連する問題