celica onclik

Izdelujem vislice v javascriptu in sem naletel na oviro. Stvar je sledeča, ko se pritisne na gumb nova igra, se mi pojavi vpisno okno v katerega vnesem besedo,jo nato razdelim po črkah in izračunam njeno dolžino in hkrati ustvarim tabelo, ki ima toliko celic kot je dolga beseda. Poleg tega se mi še kreira tabela črka, ki jo uporabim kot tipkovnico, torej če kliknem na neko črko, bi mi moralo preverit če je črka del besede ali ne. Ravno tukaj nastane težava, ker ne vem kako naprej od funkcije onclick.

Prilagam kodo:
<script type="text/javascript">
function kreirajtabelo() //tabela za črke
{
var crke=new Array("A","B","C","Č","D","E","F","G","H","I","J","K","L","M","N","O","P","R","S","Š","T","U","V","Z","Ž","X","Y","W","Q");
var pozicija=document.getElementById("tab");
tabela=document.createElement('table');
tabela.style.border="solid";
pozicija.appendChild(tabela);
for (var i=0;i<5;i++)
{var vrstica=tabela.insertRow(i);
for (var j=0;j<6;j++)
{var celica=vrstica.insertCell(j);
stevilka=j+i6; //za številko črke
celica.id=crke[stevilka];
celica.style.backgroundColor="lime";
celica.style.textAlign="center";
celica.style.height="40px";
celica.style.width="40px";
if(stevilka<29)
{
celica.innerHTML=crke[stevilka];
*
celica.onclick=function klik(){this.style.backgroundColor="black";}**
}
}}}

function beseda()
{
var beseda=prompt("Vpiši skrito besedo");
var crke=beseda.toUpperCase().split("");
var stcrk=crke.length
//kreiramo tabelo in celice za iskano besedo
var pozicija1=document.getElementById("beseda");
tabela1=document.createElement('table');
tabela1.style.border="solid";
pozicija1.appendChild(tabela1);
var vrstica1=tabela1.insertRow(0);//kreira eno vrstico
    for (var z=0;z<stcrk;z++)//kreira toliko celic kot je črk
    {var celica1=vrstica1.insertCell(z);
    celica1.id=crke[z];
    celica1.style.backgroundColor="yellow";
    celica1.style.textAlign="center";
    celica1.style.width="30px"
    celica1.style.height="30px";
    celica1.style.fontSize="40px";
    celica1.innerHTML="_";}
    kreirajtabelo(); //tabela z črkami
}
</script>

3 odgovori

Živjo,
Domnevam, da je bila "celica" prikazana s javascript(om).
V tem primeru boš po vsej verjetnosti moral bind - at klik na parenta od od "celice";

med tem časom, sem vislice že uspešno dokončal.

1

Rešitve pa ne boš napisal? Saj mi je vseeno za vislice, samo če pričakuješ pomoč, si jo skoraj lahko pripravljen tud dat.

91