mam książkowy skrypcik generujący kartę do gry w bingo. Napisałam go i wszystko działa do momentu kiedy chcę zaznaczyć dane pole. W książce nie jest to dobrze opisane tak jakby brakowało czegoś w treści/kodzie.
window.onload = inicjacja; function inicjacja() { if (document.getElementById){ document.getElementById("reload").onclick = innaKarta; newKarta(); } else { alert("Twoja przeglądarka nie jest w stanie obsłużyć tego skryptu!"); } } function newKarta(){ for(var i=0; i<24; i++){ setPole(i); } } function setPole(thisPole){ var nrPola = "pole" + thisPole; var podstawaKolumny = nrKolumna[thisPole] * 15; var newLiczba; do { newLiczba = podstawaKolumny + getLiczba(); } while (uzyteLiczby[newLiczba]); uzyteLiczby[newLiczba] = true; document.getElementById(nrPola).innerHTML = newLiczba; document.getElementById(nrPola).className = ""; // 1 pobranie wartości class danego pola? document.getElementById(nrPola).onmousedown = toggleColor; //2 wywołanie funkcji po kliknięciu na dane pole } function getLiczba() { } function innaKarta(){ for (var i=0; i<uzyteLiczby.length; i++){ uzyteLiczby[i] = false; } newKarta(); return false; } function toggleColor(){ /* if (evt){ var thisPole = evt.target; } else{ var thisPole = window.event.srcElement; //3 w tym komentarzu zawarta instrukcja jest dla explorera (wg książki) }*/ if (thisPole.className == ""){ thisPole.className = "pickedBG"; //4 przypisanie parametrowi class wartości pickedBG } else{ thisPole.className = ""; } }
Proszę o wyjaśnienie komentarzy 1, 2, 3, 4 czy dobrze je rozumiem.
W 4 komentarzu nadawana jest wartość pickedBG dla class, czy tak?
Jeśli tak to rozumiem że wystarczy zdeklarować w css kolor dla pickedBG, jednak ja robię to w ten sposób to nie działa, karta jest generowana ale nie można zaznaczyć żadnego pola.
Jak mam to rozwiązać, ewentualnie gdzie mam błędy w skrypcie.
Kod html to zwykła tabela 5x5.