过去两周我一直在研究这种摇滚,纸张,剪刀游戏。而现在已经陷入了如何获得选择胜利者的功能。我使用console.log检查函数self.velgVinner = function()
是否运行,但到目前为止还没有。
我空洞的想法。
HTML
<!DOCTYPE html>
<html>
<head>
<script src = "Assignment09.js"></script>
<meta charset = "utf-8">
</head>
<body>
<h1>Assignment09</h1>
<p id="vinner"></p>
</body>
</html>
的JavaScript
var spiller1valg;
var spiller2valg;
function Spiller(oppgave, id){
this.oppgave = oppgave;
this.id = id;
var spillerid = "spiller" + id;
var feilId = "spiller" + id;
var valg = "spiller" + id + "valg";
this.input = document.createElement("input");
this.spillerfeil = document.createElement("div");
this.spiller = document.createElement("div");
this.text1 = document.createElement("div");
//this.vinneren = document.createElement("div");
//self.spillervalg = document.createElement("div");
var self = this;
self.input.id = spillerid;
self.spillerfeil.id = feilId;
self.text1.id = valg;
self.lagBrett = function(){
console.log("lager brett");
self.spiller.style.border = "solid 1px";
self.text1.innerHTML = this.oppgave;
self.spiller.appendChild(this.input);
self.spiller.appendChild(this.text1);
self.spiller.appendChild(this.spillerfeil);
document.body.appendChild(this.spiller);
this.input.onkeyup = this.regnUt;
console.log(id);
}
this.regnUt = function(){
if (self.input.value == "stein" || self.input.value == "saks" || self.input.value == "papir" || self.input.value == "Stein" || self.input.value == "Saks" || self.input.value == "Papir"){
console.log("Gyldig valg");
self.spillerfeil.innerHTML = "Gyldig valg";
self.text1.innerHTML = "Spiller har valgt " + self.input.value ;
self.text1.style.color = "green";
self.spillerfeil.style.color = "black";
if (self.id == 1){
spiller1valg = self.input.value;
console.log("spiller 1 " + spiller1valg);
}
else if (self.id == 2){
spiller2valg = self.input.value;
console.log("spiller 2 " + spiller2valg);
}
}
else{
console.log("Ugyldig valg");
self.spillerfeil.innerHTML = "Ugyldig valg";
self.spillerfeil.style.color = "red";
}
}
self.velgVinner = function(){
console.log("velgVinner kjørte");
if(spiller1valg != "" && spiller2valg != ""){
if (spiller1valg == "stein" && spiller2valg == "saks"
|| spiller1valg == "Stein" && spiller2valg == "Saks"
|| spiller1valg == "saks" && spiller2valg == "papir"
|| spiller1valg == "Saks" && spiller2valg == "Papir"
|| spiller1valg == "papir" && spiller2valg == "stein"
|| spiller1valg == "Papir" && spiller2valg == "Stein"){
document.getElementById("vinner").innerHTML = "Spiller 1 vant";
console.log("Spiller 1 vant");
window.alert("Spiller 1 vant");
}
/*var vinner = new Spiller("Spiller 1 vant");
vinner.designVinnerText();*/
if (spiller2valg == "stein" && spiller1valg == "saks"
|| spiller2valg == "Stein" && spiller1valg == "Saks"
|| spiller2valg == "saks" && spiller1valg == "papir"
|| spiller2valg == "Saks" && spiller1valg == "Papir"
|| spiller2valg == "papir" && spiller1valg == "stein"
|| spiller2valg == "Papir" && spiller1valg == "Stein"){
document.getElementById("vinner").innerHTML = "Spiller 2 vant";
console.log("Spiller 2 vant");
window.alert("Spiller 2 vant");
/*var vinner = new Spiller("Spiller 2 vant");
vinner.designVinnerText();*/
}
else if(spiller1valg == spiller2valg){
document.getElementById("vinner").innerHTML = "Uavgjort";
console.log("Uavgjort");
window.alert("Uavgjort");
}
}
}
}
window.onload = function(){
var spiller1 = new Spiller("Skriv stein, saks eller papir: ", 1);
spiller1.lagBrett()
var spiller2 = new Spiller("Skriv stein, saks eller papir: ", 2);
spiller2.lagBrett();
document.getElementById("vinner").style.color = "green";
}
答案 0 :(得分:0)
答案 1 :(得分:-2)
只需将功能包装在IIFE中:If
将为self.velgVinner = function(){