dynamisch programmieren (JS)

Diskutiere mit über: dynamisch programmieren (JS) im Web-Programmierung Forum

  1. ThaHammer

    ThaHammer Thread Starter MacUser Mitglied

    Beiträge:
    3.276
    Zustimmungen:
    13
    Registriert seit:
    01.06.2004
    Ich wollte mal anfange, etwas mehr mit Javascript zu machen und stolpere gleich am Anfang über was einfaches. So dachte ich jedenfalls!

    Code:
      //var i = document.all.mymenu.style.getAttribute("width","false");
      var i = document.getElementById("submenu1").style.visibility;
    
    Eigentlich wollte ich nur das css Attribute von meinem Menu abfragen, so kommt anber immer document.all has no propertys!
    Das zweite per getElementByID scheint zwar zu gehen liefert aber nichts zurück. Wo ist mein Fehler?
     
  2. Darii

    Darii MacUser Mitglied

    Beiträge:
    2.066
    Zustimmungen:
    110
    Registriert seit:
    24.02.2004
    Das erste funktioniert natürlich nicht, da document.all eigentlich gar nicht existiert, das das wurde nur von M$ irgendwann mal im Zeitalter des großen Browserkrieges eingeführt. Also streich es am besten gleich aus deinem Gedächtnis.
    Wenn das 2. nichts zurückgibt, ist die Eigenschaft nicht gesetzt, der Defaultwert wird in diesem Fall wohl "visible" sein.
     
  3. ThaHammer

    ThaHammer Thread Starter MacUser Mitglied

    Beiträge:
    3.276
    Zustimmungen:
    13
    Registriert seit:
    01.06.2004
    Ok, das erste wußte ich leider schon gar nicht! Danke!
    Jetzt gehts doch! Danke Dir. Habe den Aufruf woanders hingepackt, jetzt gehts.
     
    Zuletzt bearbeitet: 07.04.2007
  4. koli.bri

    koli.bri Gast

    Wird die CSS-Datei auch VOR dem JavaScript geladen?
    Auf solche Sachen, und bei mehreren JS-Dateien, die auf die selben Variablen zugreifen, muss man aufpassen, da bin ich schon so oft drauf reingefallen :D
    Und ich werde noch oft drauf reinfallen.
     
  5. ThaHammer

    ThaHammer Thread Starter MacUser Mitglied

    Beiträge:
    3.276
    Zustimmungen:
    13
    Registriert seit:
    01.06.2004
    OK, JS war vor der css Datei dran. Jetzt will ich aber die Breite abfragen, als Beispiel mal. Weil am Ende will ich ja das Submenu ausklappen lassen, also so einen netten Effekt zaubern. Vom Grundprinzip ist da ja eigentlich nicht so wild. Schleife, Breite aktualisieren, evtl. Fontsize in % damit der Text größer wird je breiter. Gut, so weit hört sich das einfach an. Nur will ich jetzt die Breite eben abfragen und bekomme wieder nichts zurück. Breite ist aber auf 150px gesetzt! :confused:
     
  6. ThaHammer

    ThaHammer Thread Starter MacUser Mitglied

    Beiträge:
    3.276
    Zustimmungen:
    13
    Registriert seit:
    01.06.2004
    So, ich habe meinen Fehler gefunden! Wobei ich nicht draufkomme, warum das jetzt falsch ist? Kann mir da mal jemand helfen?

    Code:
         for(i=0;i<=150;i++) {
    		i = i + "px";
    	}
        alert(typeof i);
    
    Das dient jetzt nur dazu meinen Fehler zu finden! Also ich durchlaufe die Schleife mit i, und setze es für die Style Anweisung mit dem Text "px" zusammen um den Wert später ins Dokument für ein Div zu schreiben.
    Soweit die Theorie! In der Praxis funktioniert es so leider mal wieder nicht!
    Mein Alert mit dem Typ der Variable i gibt number zurück, ich brauche aber String. Sollte i nicht zum String werden, wenn ich die Zahl mit Text kombiniere?
     
  7. Darii

    Darii MacUser Mitglied

    Beiträge:
    2.066
    Zustimmungen:
    110
    Registriert seit:
    24.02.2004
    was wars denn?

    Theoretisch schon. Aber i ist deine Iterationsvariable. Mit i++ wird die natürlich wieder zum Integer. Dass die Schleife dann keine 150 Mal durchläuft ist da nur das Randproblem. Versuchs mal so:
    Code:
         for(i=0;i<=150;i++) {
    		blub = i + "px";
    	}
        alert(typeof blub);
     
  8. ThaHammer

    ThaHammer Thread Starter MacUser Mitglied

    Beiträge:
    3.276
    Zustimmungen:
    13
    Registriert seit:
    01.06.2004
    Ich bin mir wegen dem Fehler nicht ganz sicher, war wohl ein Tippfehler beim zusammenbasteln der Funktion.

    Ok, ich glaube ich habs kapiert was Du meinst? Ich wandele ständig i von Zahl nach String und zurück! Doofe Idee, mit einer zweiten Variable ist das einfach und geht auch. Jetzt kriege ich String zurück! Danke Dir.

    Aber das hier funktioniert noch nicht so recht!

    Code:
      document.getElementById("submenu1").style.width = blub;
    
    Wie kann ich das Verzögern? Bin auf folgendes gestoßen, allerdings habe ich noch Probleme damit!

    Code:
      window.setTimeout('dynamic()','5000')
    
    Habe nochmals nachgelesen, scheint als wäre setTimeout der falsche weg? :confused:
    Gibt es irgendwo eine Einsteigerseite für solche Sachen?
     
  9. Darii

    Darii MacUser Mitglied

    Beiträge:
    2.066
    Zustimmungen:
    110
    Registriert seit:
    24.02.2004
  10. ThaHammer

    ThaHammer Thread Starter MacUser Mitglied

    Beiträge:
    3.276
    Zustimmungen:
    13
    Registriert seit:
    01.06.2004
    Na, ja ich dachte das wäre nicht ganz so kompliziert? :(
     
Die Seite wird geladen...
Ähnliche Themen - dynamisch programmieren (JS) Forum Datum
Wie am Mac heute PHP programmieren? Web-Programmierung 27.04.2013
Javascript Text verschwinden lassen (display:none) Web-Programmierung 31.12.2012
Dynamisch erstellte Navugation mit MySQL Anbindung Web-Programmierung 10.11.2012
javascript: dynamisch value von textbox ändern? Web-Programmierung 23.09.2011
buch für webpage programierungen Web-Programmierung 28.03.2010

Diese Seite empfehlen

Benutzerdefinierte Suche