Je commence tout juste à apprendre le javascript, et j'ai essayé d'écrire un petit script qui ferait une grille de divs sur une page.Variables globales et locales dans mon script
est ici le script:
var tileWidth=50;
var tileHeight=100;
var leftPos=10;
var topPos=10;
var columns=10;
var rows=10;
var spacing=5;
$('document').ready(function() {
placeTiles();
});
function makeRow() {
for (var i=0; i<columns; i++) {
$('#canvas').append('<div class="tile" style="left:' + leftPos + 'px;top:' + topPos + 'px;"></div>');
var leftPos = leftPos + tileWidth + spacing;
}
}
function placeTiles() {
for (var i=0; i<rows; i++) {
makeRow();
var topPos = topPos + tileHeight + spacing;
}
}
À l'heure actuelle, 100 <div>
s sont créées, toutes avec une position supérieure de 10px et une position gauche non définie (pour la première <div>
de la ligne) ou NaN.
Que devrais-je faire différemment? Pourquoi ne peut pas makerow()
voir ma variable globale leftPos
(et toutes les autres variables d'ailleurs)?
Merci.
ne pas user var devant LeftPos, parce que vous avez déclaré gauche après au sommet de votre script –
LeftPos désolé , dans votre foreach retirer var de "var leftPos" –