Functie werkt niet naar behoren met subtraction...
Door
Richard Hansma
op 19-02-2014 15:56
gewijzigd op 19-02-2014 15:57
1.872 views
Beste PHP-ers,
Uit verveling ben ik begonnen met een JS dart-script te bouwen. Het is nog erg simpel en zal later misschien worden uitgebreid met PHP. Maar voor het zover is, moet ik eerst een oplossing vinden/krijgen voor mijn probleem.
Stel: Ik speel een 501 potje en ik gooi 110. Dan hoor ik 391 over te houden en dat is ook zo. Maar dan het vreemde, zodra ik dan 40+ gooi, geeft ie mijn error melding aan, dat het niet mogelijk is... Nu ben ik er dus achter dat het laatste getal niet wordt meegeteld... Want zodra ik op 31 sta bijvoorbeeld, kan ik niet hoger dan 3 gooien.
var i = 0;
function dartScore(value) {
if (event.which == 13 || event.keyCode == 13) {
var y = document.getElementById("output").innerHTML;
var x = value;
var z = y - x;
if (x == 159 || x == 162 || x == 163 || x == 165 || x == 166 || x == 168 || x == 169 || x == 172 || x == 173 || x == 175 || x == 176 || x == 178 || x == 179 || x > 180 || y < x) {
alert("Dit is niet mogelijk, vul het opnieuw in!");
} else {
i++;
document.getElementById("output").innerHTML = z;
if (z === 0) {
if (z < 0) {
z = 0;
}
if (i == 3) {
document.getElementById("output").innerHTML = "Speler 1 heeft gewonnen met een 9 darter!!!!!";
} else {
document.getElementById("output").innerHTML = "Speler 1 heeft gewonnen in " + i + " beurten!";
}
}
}
}
}
[quote="Erwin H op 19/02/2014 17:50:37"]
Waar komt event vandaan op regel 3?
Ik nam aan dat ik dat gewoon kan gebruiken. Zodat de functie pas werkt wanneer ik op enter druk. Verder niet bij nagedacht omdat het ook werkt...
[/quote]
Bij mij in elk geval niet. FF begint te mekkeren dat event niet gedeclareerd is (en wat mij betreft klopt dat).
Niet op de manier zoals jij denkt.
Events zijn global maar niet het event op zich zelf.
Dus je zal op bepaalde elementen altijd een eventListener moeten zetten.