2011-01-05 5 views
2

このスクリプトを実行すると、document.GetElementByIdが関数ではないというエラーメッセージが表示されます。 http://www.fritidsjobbere.dk: - あなたはでサイトを見ることができますGetElementByIdは関数ではありませんか?

//Show random div with Javascript 
antal = 6; 
var randomnumber=Math.floor(Math.random()*antal); 
if(randomnumber == "0") { 
randomnumber = 1; 
} 
//alert(randomnumber); 
document.getElementsById("partner-ad"+randomnumber).style.display = 'block'; 

答えて

13

getElementsById - >getElementById

2

それが特異だ(IDは一意である、それは1つの結果だけを返す必要があります)、このようdocument.getElementById

document.getElementById("partner-ad"+randomnumber).style.display = 'block'; 

また、お客様の実際のコードはお客様の質問とは異なります実際のページの... IDIdであることを確認してください。


別のサイドノートで、広告がpartner-ad1partner-ad6を通じて、あなたの現在のコードが6th広告を表示しないだろうしているので、あなたはそれを簡素化し、このようにその問題を解決することができます

var antal = 6; 
var randomnumber=Math.ceil(Math.random()*antal); //instead of Math.floor 
document.getElementById("partner-ad"+randomnumber+"").style.display = 'block'; 
+0

OKああ、THX :)とにかく、それは別の問題を作りました - 今私はそのエラーメッセージを取得しました。document.getElementById( "partner-ad" + randomnumber + "")。style.display = 'block'; はnullですか? - しかし、もし私が乱数を警告すると、私は数字を得ますか? – nickycdk

+1

はい、ただし、このIDを持つDOM内に要素があるという保証はありません。 –

+1

@nickycdk - あなたの '

関連する問題