Byta bild vid klick på bilder i en matris.

Permalänk
Medlem

Byta bild vid klick på bilder i en matris.

Jag håller på att fräscha upp min webbprogrammering och började pilla lite med tic tac toe spelet. Jag tänkte programmera spelet med hjälp av bilder. En bild som är en tom ruta. Sedan bild 2 och 3 är bilder på kryss och cirkel.

Jag har lagt uppbilderna i en matris och när spelet börjar är det 9 st bilder på en tom ruta och bilden jag använder heter tom.gif, de andra heter kryss.gif och cirkel.gif. Bilderna i matrisen sätter jag id-attributen till r1 - r9.

Det jag behöver hjälp med är att hur gör jag lättast för att byta en bild när jag klickar i en ruta? Klickar jag i en tom ruta så vill jag att bilden ändras till en annan. Jag har hittat exempel på när man har en bild och klickar på den, men inte om jag har 9 olika att bilder att utgå från.

För tillfället behöver jag inte lösa att den ska känna av om det är kryss eller cirkel som ska ändras till utan bara att byta bild, det andra vill jag försöka lösa själv.

Någon som har lite tips på hur jag skulle kunna göra?

Visa signatur

Apple Mackbook Pro 15" Retina 2013

Permalänk
Medlem

Vad programmerar du i för språk?

Permalänk
Medlem

Jag antar att du kör spellogiken i javascript.

Du skulle tex kunna sätta en klass på varje ruta och koppla upp lyssnare.

<div class="square"> </div> $('.square').click(function(){ });

Permalänk

Får man fråga varför du ska använda bilder överhuvudtaget när det är kryss och cirklar du ska rita ut?

Permalänk
Medlem

<div class="square"> </div> <script> $(function() { BindClickToSquares(); }); function BindClickToSquares() { $(".square").on("click",HandleSquareClick); } function HandleSquareClick() { var square = $(this); var validMove = UpdateGameLogicOnClick(square); if(validMove.success) { UpdateSquareImage(square); } else { SetStatusMessage(validMove.statusMessage); } } function UpdateSquareImage(square) { // kryss eller cirkel var playerImage = GetPlayerImageType(); var currentImage = square.find("img"); currentImage.hide().attr("src", playerImage + ".gif").fadeIn("fast"); } function SetStatusMessage(message) { // broadcast message } function UpdateGameLogicOnClick() { // Update game logic, set states, etc. return {"success": true, "message": "Bra!"}; } </script>

Permalänk
Medlem
Skrivet av Yxskaftet:

Får man fråga varför du ska använda bilder överhuvudtaget när det är kryss och cirklar du ska rita ut?

Hans kryss eller cirkel kanske ska vara fin? Spelplanen kanske är ett foto av hans morfars gamla luffarschack och han har olika snidade ek-ringar som ska placeras ut.

Det är väldigt svårt att göra med annat än bilder.

Permalänk
Medlem
Skrivet av Yxskaftet:

Får man fråga varför du ska använda bilder överhuvudtaget när det är kryss och cirklar du ska rita ut?

Det är också bra att komma med något konstruktivt som vad du föreslår istället.