• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Ich werd verrückt, length Fehler

Status
Für weitere Antworten geschlossen.

gollum1990

Neues Mitglied
Hallo,

habe Problem mitz length attribut dat will nit,

der sagt length ist null oder kein Object

hier der Code.
PHP:
<script type="text/javascript">

var map = [[1,1,1,1,1,1,1,1,1,1],
           [1,0,0,0,0,0,0,0,0,1],
           [1,0,0,0,0,0,0,0,0,1],
           [1,0,0,0,0,0,0,0,0,1],
           [1,0,0,0,0,0,0,0,0,1],
           [1,0,0,0,0,0,0,0,0,1],
           [1,0,0,0,0,0,0,0,0,1],
           [1,0,0,0,0,0,0,0,0,1],
           [1,0,0,0,0,0,0,0,0,1],
           [1,1,1,1,1,1,1,1,1,1]];

function drawTile(x,y,type) {
         switch(type) {
                case 'floor':
                     id = "floor";
                break;
                case 'wall':
                     id = "wall";
                break;
                case 'char':
                     id = "chars";
                break;
         }
         document.write('<div id="'+id+'" style="position:absolute;top:'+x*100+';left:'+y*100+';"></div>');
}
function showMap(map) {
         for(var y = 0; y<map.length; y++) {
            for(var x = 0; x<map[0].length; x++) {
                if(map[y][x] == 0) {
                   drawTile(x, y, "floor");
                }
                if(map[y][x] == 1) {
                   drawTile(x, y, "wall");
                }
                if(map[y][x] == 2) {
                   drawTile(x, y, "char");
                }
            }
        }
}
showMap();
</script>

danke im vorruas für hilfe.
 
Kein wunder, du übergibst auch nicht den Namen des Arrays an die Funktion ;)
Wenn du nämlich beim Funktionsaufruf nichts in die Klammer schreibst, dann wird diese Variable als "undefined" deklariert.

Schau dir mal folgendes Beispiel für sowas an:
PHP:
var test = "text";
function machwas(test){
alert(typeof test);
}
machwas();

Außerdem wird es wohl 2 Fehler geben:
1. Eine ID muss eindeutig sein, du darfst keine 2 Objekte mit der gleichen ID ausstatten (benutz besser eine Klasse in der Funktion drawTile).
2. Müssen die Angaben top und left ein "px" am ende haben.


btw: Ich kannte diese Möglichkeit Arrays zu erstellen garnicht, wenigstens mal was dazugelernt ^^
 
Job, hab ich bemerkt, aber ich habs jetzt, weisst du vielleicht die KeyCodes für
Rauf, Runter, Links, Rechts
 
Auswendig nicht, aber die kannst du auch ganz einfach selber rausfinden:

PHP:
function keyCode(evt){
alert(evt.which);
}
document.onkeypress = keyCode;
Dummerweise haben alle Pfeiltasten die Belegung 0, vllt. kannst du ja w a s d verwenden ;)
 
Hmm.. Gut, aber ich habe mich anders entschieden, man soll mit der Maus steuern, mir ist das ein bischen yu kompli mit der Tastatur. Danke an Alle.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben