Wyświetlanie pytań

0

Napisałem taki kod:

<!DOCTYPE html>

<html lang="pl">
<head>
<style>
.normal {
	border: 5px solid #555;
	background-color: #CCC;
}
.tak {
	border: 5px solid #0F0;
	background-color: #3D2;
}
.nie {
	border: 5px solid #F00;
	background-color: #F32;
}

</style>
<meta charset="utf-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
var q = [];
q[0] = "Czy ?";
q[1] = "Czy ?2222";
q[2] = "Czy ?33333";
q[3] = "Czy ?44444";
q[4] = "Czy ?55555";
q[5] = "Czy 666666?";
q[6] = "Czy 777777?";
q[7] = "Czy 888888?";
q[8] = "Czy 9999999?";
q[9] = "Czy 0000000?";
$("#pytania").append('<div id="q" class="normal"> ' + q[2]+ '</div>');

for (i = 0; i <= 9; i++) {
	document.write(i);
	$("#pytania").append('<div id="q' + i+ '" class="normal"> ' + q[i]+ '</div>');
}
</script>
</head>
<body>
	<div id="pytania">
	</div>
</body>
</html>

Jednak pytania się wyświetlają. Nie wiem co jest nie tak, ponieważ gdy dodam ten kod w konsoli js w chrome to kod się wykonuje poprawnie. Z góry dzięki za pomoc ;)

1

Chyba "nie wyświetlają".

Umieść skrypt w osobnym pliku i dodaj przed </body>. Skrypty są wykonywane natychmiast. Gdy masz je u góry, jak teraz, to wykonują się zanim jeszcze div #pytania zostanie odczytany i dodany do drzewa dokumentu. Skrypty go nie widzą.

Aha... Nigdy nie pisz tak:

var arr = [];
arr[0] = "raz";
arr[1] = "dwa";
arr[2] = "trzy";

To obciach i marnowanie miejsca ;).

Napisz tak -- to to samo, tylko krócej i bardziej elegancko:

var arr = ["raz", "dwa", "trzy"];
0

Dzięki, faktycznie po przeniesieniu kodu niżej nad </body> wszystko działa poprawnie :). Wielkie dzięki.

0

Zamiast przenosić poniżej body, możesz użyć $(document).ready(function (){ TU WKLEJASZ TWÓJ KOD });

Jak rozwiniesz stronę, nie będziesz musiał szukać kodu gdzieś het het na dole.

1 użytkowników online, w tym zalogowanych: 0, gości: 1