Kezdőoldal » Számítástechnika » Programozás » Valaki megtalálja a hibát a...

Valaki megtalálja a hibát a kódban? Ez egy memóriajáték lenne, de nem jelennek meg a kártyák.

Figyelt kérdés

<!DOCTYPE html>

<html>

<head>

<style type="text/css">

div#memory_board{

background:#CCC;

border:#999 1px solid;

width:800px;

height:540px;

padding:24 px;

margin:0px auto;

}

div#memory_board > div {

background: url(tile_bg.jpg) no-repeat;

border:#000 1px solid;

width: 71px;

height: 71px;

float:left;

margin:10px;

padding:20px;

font-size:64px;

cursor:pointer;

text-align:center;

}

</style>

<script>

var memory_array = ['A','A','B','B','C','C','D','D','E','E','F',']

var memory_values = [];

var memory_tile_ids = [];

var tiles_flipped = 0;

Array.prototype.memory_tile_shuffle = function(){

var i = this.length, j, temp;

while (--i >0){

j= Math.floor(Math.random() * (i+1));

temp = this[j];

this[j] = this[i];

this[i] = temp;

}

}

function newBoard(){

tiles_flipped = 0;

var output = '';

memory_array.memory_tile_shuffle();

for(var i = 0; i < memory_array.length; i++) {

output += 'div id="tile_'+i+'" onclick="memoryFlipTile(this,\''+memory_array[i]+'\')"></div>';

}

document.getElementById('memory_board').innerHTML = output;

}

function memoryFlipTile(tile,val){

if(tile.innerHTML == "" && memory_value.length < 2){

tile.style.background = '#FFF';

tile.innerHTML = val;

if(memory_values.length == 0){

memory_values.push(val);

memory_tile_ids.push(tile.id);

} else if(memory_values.length = 1){

memory_valus.push(val);

memory_tile_ids.push(tile.id);

if(memory_values[0] == memory_values[1]){

tiles_flipped += 2;

// Clear both arrays

memory_values = [];

memory_tile_ids = [];

// Check to see if the whole board is cleared

if(tiles_flipped == memory_array.length) {

alert("Board cleared...generating new board");

document.getElementById('memory_board').innerHTML = "";

newBoard();

}

} else {

function flip2Back(){

// Flip the 2 tiles back over

var tile_1 = document.getElementById(memory_tile_ids[0]};

var tile_2 = document.getElementById(memory_tile_ids[1]);

tile_1.style.background = 'url(tile_bg.jpg) no-repeat';

tile_1.innerHTML = "";

tile_2.style.background = 'url(tile_bg.jpg) no-repeat';

tile_2.innerHTML = "";

//Clear both arrays

memory_values = [];

memory_title_ids = [];

}

setTimeout=flip2Back, 700);

}

}

}

}

</script>

</head>

<body>

<div id="memory_board"></div>

<script>newBoard();</script>

</body>



</html>



2014. márc. 31. 23:25
 1/9 anonim ***** válasza:

for(var i = 0; i < memory_array.length; i++) {

output += 'div id="tile_'+i+'" on


Itt például a div elől hiányzik egy kacsacsőr szerintem.

2014. márc. 31. 23:39
Hasznos számodra ez a válasz?
 2/9 A kérdező kommentje:
Ezt már javítittam, de sajnos még mindig nem jó. Más ötlet?
2014. márc. 31. 23:42
 3/9 anonim ***** válasza:

még mindig messze nem tökéletes, de legalább a "gépelési hibákat" kiszedtem... figyelj oda, mert a hibák 99%-a abból ered, hogy össze vissza zárójelezel pl: (valami] vagy akármi=valami,8);


<!DOCTYPE html>

<html>

<head>

<style type="text/css">

div#memory_board{

background:#CCC;

border:#999 1px solid;

width:800px;

height:540px;

padding:24 px;

margin:0px auto;

}

div#memory_board > div {

background: url(tile_bg.jpg) no-repeat;

border:#000 1px solid;

width: 71px;

height: 71px;

float:left;

margin:10px;

padding:20px;

font-size:64px;

cursor:pointer;

text-align:center;

}

</style>

<script>

var memory_array = ['A','A','B','B','C','C','D','D','E','E','F']

var memory_values = [];

var memory_tile_ids = [];

var tiles_flipped = 0;

Array.prototype.memory_tile_shuffle = function(){

var i = this.length, j, temp;

while (--i >0){

j= Math.floor(Math.random() * (i+1));

temp = this[j];

this[j] = this[i];

this[i] = temp;

}

}

function newBoard(){

tiles_flipped = 0;

var output = '';

memory_array.memory_tile_shuffle();

for(var i = 0; i < memory_array.length; i++) {

output += '<div id="tile_'+i+'" onclick="memoryFlipTile(this,\''+memory_array[i]+'\')"><</div>';

}

document.getElementById('memory_board').innerHTML = output;

}

function memoryFlipTile(tile,val){

if(tile.innerHTML == "" && memory_value.length < 2){

tile.style.background = '#FFF';

tile.innerHTML = val;

if(memory_values.length == 0){

memory_values.push(val);

memory_tile_ids.push(tile.id);

} else if(memory_values.length = 1){

memory_valus.push(val);

memory_tile_ids.push(tile.id);

if(memory_values[0] == memory_values[1]){

tiles_flipped += 2;

// Clear both arrays

memory_values = [];

memory_tile_ids = [];

// Check to see if the whole board is cleared

if(tiles_flipped == memory_array.length) {

alert("Board cleared...generating new board");

document.getElementById('memory_board').innerHTML = "";

newBoard();

}

} else {

function flip2Back(){

// Flip the 2 tiles back over

var tile_1 = document.getElementById(memory_tile_ids[0]);

var tile_2 = document.getElementById(memory_tile_ids[1]);

tile_1.style.background = 'url(tile_bg.jpg) no-repeat';

tile_1.innerHTML = "";

tile_2.style.background = 'url(tile_bg.jpg) no-repeat';

tile_2.innerHTML = "";

//Clear both arrays

memory_values = [];

memory_title_ids = [];

}

setTimeout=(flip2Back, 700);

}

}

}

}

</script>

</head>

<body>

<div id="memory_board"></div>

<script>newBoard();</script>

</body>


</html>


ui: a gyakori kérdések fejlesztői pedig csinálják meg rendesen az oldalt mielőtt letiltják a pastebin.com-ot! nem lehet normálisan kódrészletet beilleszteni, de azért blokkolva van azaz oldal ami meg meg tudná jeleníteni áttekinthetően, formázottan. logikus...

2014. ápr. 1. 04:34
Hasznos számodra ez a válasz?
 4/9 anonim ***** válasza:

ja és egy pontosvessző is lemaradt:

var memory_array = ['A','A','B','B','C','C','D','D','E','E','F']; <-itt.

csak mivel szerkesztés funkció sincs ezen az oldalon nem akartam újra beszúrni az egészet..

egyébként már megjelennek.

2014. ápr. 1. 04:38
Hasznos számodra ez a válasz?
 5/9 anonim ***** válasza:
ja, egy másik hibát pedig beleraktam: < nem kell bele mert közbe kiraktam a < jelet
2014. ápr. 1. 04:40
Hasznos számodra ez a válasz?
 6/9 anonim ***** válasza:
js annyira nem az erősségem, de elvileg több szintaktikai hiba már nincs benne. lehet még elkerülte valami a figyelmem, akkor bocs, én is jegyzettömbbel néztem át, azzal pedig eléggé áttekinthetetlen, főleg mivel nincsen egymás alá szedve. (de ez nem a te hibád hanem az oldalé)
2014. ápr. 1. 04:42
Hasznos számodra ez a válasz?
 7/9 anonim ***** válasza:

Nekem gyanús, hogy a JS-ek vannak szarul zárójelezve, tekintve, hogy a böngésző be sem tölti..

Egyébként minden böngészőben F12-t nyomsz, az sokat segít.

2014. ápr. 1. 13:49
Hasznos számodra ez a válasz?
 8/9 anonim ***** válasza:

Firefox dev console ezt írja:

SyntaxError: unterminated string literal mem.html:27

2014. ápr. 1. 13:50
Hasznos számodra ez a válasz?
 9/9 anonim ***** válasza:
Én meg bele se fogok olvasni, míg nem pastebinen látom.
2014. ápr. 1. 16:02
Hasznos számodra ez a válasz?

További kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!