我想用一個變量的getElementById,但它只是返回:的getElementById可變
Uncaught TypeError: Cannot read property 'style' of null
我的代碼如下有關
document.getElementsByClassName("right").onclick = function() {
score++;
score2++;
document.getElementsByClassName("right").style.color = "green";
document.getElementsByClassName("wrong").style.color = "red";
setTimeout(function() {
document.getElementById("question"+score2).style.display = "none";
document.getElementById("question"+score).style.display = "inline";
}, 1500);
};
It'sa測驗,它應該做的是,當正確的答案(與班級權利)被點擊時,它應該爲分數加1,分數爲1(分數爲-1),而在1.5秒之後,正確和錯誤的答案用綠色和紅色突出顯示下一個答案應該出現。例如,在問題2之後,得分是3,代碼應該將顯示(表單css)從無(不可見)改爲內聯(可見),並且回答的問題應該消失。例如問題2 score2 = 2的代碼之後
document.getElementById("question"+score2).style.display="none";
應該使問題2,這是與ID問題2所有的人,像看不見一個div。
---編輯--- 整個代碼:
var score = 0
var score2 =-1
document.getElementById("go").onclick = function() {
score++;
score2++;
console.log("Score:");
console.log(score);
console.log("Score2:");
console.log(score2);
document.getElementById("question"+score2).style.display="none";
document.getElementById("question"+score).style.display="block";
};
document.getElementsByClassName("right").onclick = function(){
score++;
score2++;
console.log("Score:");
console.log(score);
console.log("Score2:");
console.log(score2);
document.getElementsByClassName("right").style.color="green";
document.getElementsByClassName("wrong").style.color="red";
setTimeout(function(){
document.getElementById("question"+score2).style.display="none";
document.getElementById("question"+score).style.display="inline";
},1500);
};
---編輯--- 的HTML代碼: 注:有一些問題的div W/O的內容,這些都是提出未來的問題。在我的js中,我使用每個div的第二個id(例如question8而不是questionEight)。
<div id="startScreen" id="question0">
<h1>
WELCOME TO THE 100 QUESTION GAME!
</h1>
<h2 id="go" style="color:pink">
Lets GO!
</h2>
<p>
by strawberry studios
</p>
</div>
<div id="questionOne" id="question1" style="display:none;">
<h1>
Von wo aus kann man nur nach Süden gehen?
</h1>
<br>
<br>
<a id="questionOneAnswerOne" class="right">Nordpol</a> <br> <!--Richtig-->
<a id="questionOneAnswerTwo">Südpol</a> <br>
<a id="questionOneAnswerThree">Äquator</a> <br>
<a id="questionOneAnswerFour">Bayern</a> <br>
</div>
<div id="questionTwo" id="question2" style="display:none;">
<h1>
Was ist am teuersten?
</h1>
<br>
<br>
<a id="questionTwoAnswerOne">Diamant</a> <br>
<a id="quoestionTwonswerTwo">Platin</a> <br>
<a id="questionTwoAnswerThree">Gold</a> <br>
<a id="questionTwoAnswerFour" class="right">Osmium</a> <br> <!--Richtig-->
</div>
<div id="questionThree" id="question3" style="display:none;">
<h1>
Wofür steht HTML?
</h1>
<br>
<br>
<a id="questionThreeAnswerOne">Hyper Text Multiple Language</a> <br>
<a id="questionThreeAnswerTwo">Hyper Text Markup Language</a> <br> <!--Richtig-->
<a id="questionThreeAnswerThree" class="right">Hydrotecinmultiliquid</a> <br>
<a id="questionThreeAnswerFour">Hype The Mother (a)lLong<a/> <br>
</div>
<div id="questionFour" id="question4" style="display:none;">
<h1>
Welche Farbe hätte Cola ohne Farbstoffe?
</h1>
<br>
<br>
<a id="questionFourAnswerOne">Gelb</a> <br>
<a id="questionFouranswerTwo">Erdbraun</a> <br>
<a id="questionFourAnswerThree" class="right">Grün</a> <br> <!--Richtig-->
<a id="questionFourAnswerFour">Türkis<a/> <br>
</div>
<div id="questionFive" id="question5 "tyle="display:none;">
</div>
<div id="questionSix" id="question6" style="display:none;">
</div>
<div id="questionSeven" id="question7" style="display:none;">
</div>
<div id="questionEight" id="question8" style="display:none;">
</div>
<div id="questionNine" id="question9" style="display:none;">
</div>
<div id="questionTen" id="question10" style="display:none;">
</div>
<script type="text/javascript" src="javascript.js"></script>
,你能不能給我們的HTML部分,以及,我會解決問題 – LGSon