Höhe eines Layers bestimmen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Höhe eines Layers bestimmen

    Ich versuche jetzt gerade mühselig die Höhe des Layers zu verändern.

    Code:
    // id Attribut div-Element verpassen
    var Ausrichtung = document.createAttribute("id");
    Ausrichtung.nodeValue = "test";
    var Element = document.getElementsByTagName("div")[0];
    Element.setAttributeNode(Ausrichtung);
    
    var Ausrichtung = document.createAttribute("style");
    Ausrichtung.nodeValue = "width:"+window.innerWidth+"px;"+"height:"+window.innerHeight+"px;";
    var Element = document.getElementsByTagName("div")[0];
    Element.setAttributeNode(Ausrichtung);
    Ich würde gerne, dass die Höhe der Verdunklung (erstes Div) gleich der Höhe der kompletten Seite ist, weiß jemand wie das geht? Habs schon mit nem Layer-iD versucht, aber geht nicht.

    So sieht das Dokument aus. Weiß jemand, wie ich die Höhe des Divs "d_wrapper" heraus bekomme?
    Code:
          <div>
               <script src="test.js" type="text/javascript"></script>
          </div>
          <div id='d_wrapper'>
          </div>
    Wenn ich versuche über document.getElementById bekomme ich die Meldung Element hat keine Eigenschaften.

  • #2
    Wenn ich versuche über document.getElementById bekomme ich die Meldung Element hat keine Eigenschaften
    Code:
    alert(document.getElementById('d_wrapper').offsetHeight);
    Müsste dir die aktuelle Höhe des divs im AlertFenster ausgeben.

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Re: Höhe eines Layers bestimmen

      createAttribute/setAttribute ist im IE übrigens reichlich fehleranfällig.
      Besser ist es da fast immer, wenn man die jeweiligen Eigenschaften direkt setzt.
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Meinst du die Eigenschaft direkt im Html Code setzen?

        Kommentar


        • #5
          Nein.
          Statt createAttribute() ... und Element.setAttributeNode(Ausrichtung);

          einfach Element.attribut = Wert;
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Danke, hat super geklappt
            Zuletzt geändert von ; 08.07.2006, 16:11.

            Kommentar


            • #7
              Original geschrieben von wahsaga

              einfach Element.attribut = Wert;
              Vielen Dank für deinen Tipp.
              Habe jetzt folgenden Code "daraus" gemacht:
              PHP-Code:
              document.getElementById("msg").style "visibility:visible;";
                
              document.getElementById("black_layer").style "width:"+
              (
              window.innerWidth-20)+"px;"+"height:"+vheight+"px;display:block;"
              Leider wird dann der Layer nur in Opera nagzeigt, habe ich etwas nciht beachtet?

              Kommentar


              • #8
                Müsste das nicht so heissen ?
                PHP-Code:
                document.getElementById("msg").style.visibility ="visible"
                Gruss

                tobi
                Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                Kommentar


                • #9
                  Danke, aber jetzt hat Opera Probleme... und der IE kanns garnicht darstellen, ist das normal?

                  PHP-Code:
                  var vheight document.getElementById('d_wrapper').offsetHeight 
                  document.getElementById('d_text').offsetHeight;
                    
                  document.getElementById("msg").style.visibility "visible;";
                    
                  document.getElementById("black_layer").style.width = (window.innerWidth-20)+"px";
                      
                  document.getElementById("black_layer").style.height vheight+"px";
                      
                  document.getElementById("black_layer").style.display "block"

                  Kommentar


                  • #10
                    Weiss jetzt nicht ob das der Fehler ist, aber die Werte welche du mit attribute = wert festlegst, sollten afaik keine ';' am Ende haben. Also 'visible' und nicht 'visible;'

                    Gruss

                    tobi
                    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                    Kommentar


                    • #11
                      Ja das war auf jeden Fall der fehler in Opera, danke

                      Leider unterstütztz der IE dies bei mir noch nicht... naja mal schaun...

                      Kommentar

                      Lädt...
                      X