Greenleon: Dumme Frage

Hallo... ich fang grad erst mit Javascript an deswegen so eine daemliche Frage...

also ich habe 5 verschiedene A elemente die jeweils eine Eigene ID haben, dann hab ich eine Variable die immer eine Dieser IDs als Wert hat und ich moechte jetzt immer das a element was gerade in der Variablen steht mit nem anderen Hintergrund versehen...

es ist so untergebracht:

<body>
<div class="blub">
<ul class="hastenichgesehen">
<li><a href="http://www.selfhtml.de id="hallo2">Link2</a></li>
<li><a href="http://www.selfhtml.de id="hallo3">Link3</a></li>
<li><a href="http://www.selfhtml.de id="hallo4">Link4</a></li>
<li><a href="http://www.selfhtml.de id="hallo5">Link5</a></li>
<li><a href="http://www.selfhtml.de id="hallo1">Link<1/a></li>
</ul>
</div>
</body>

Gruss Leon

  1. Hi, sollte ein Link nicht so aussehen:
    <a href="URL" id="EINEID"> blablabla </a>

    Du kannst die ID doch nicht in der URL unterbringen.
    Wenn du willst das ein Link der angeklickt wurde mit einer Hintergrundfarbe versehen wird, würde ich sowieso CSS nehmen.

    shutdown-cartun

    1. Hi, sollte ein Link nicht so aussehen:
      <a href="URL" id="EINEID"> blablabla </a>

      Du kannst die ID doch nicht in der URL unterbringen.
      Wenn du willst das ein Link der angeklickt wurde mit einer Hintergrundfarbe versehen wird, würde ich sowieso CSS nehmen.

      shutdown-cartun

      schreibfehler... der sieht schon so aus wie du sagst^^

      naja ich weiss nicht in welcher Form ich dann das GetElementById machen soll vllt so: element.all.getElementById(var).style???

      1. Hi,

        ich habe es jetzt mal mit JavaScript gemacht (im echten Leben nehme ich dafür CSS ;):

          
        <script type="text/javascript">  
         function linkon(links)  
        {  
         aendern= document.getElementById(links).style;  
         aendern.backgroundColor = "blue";  
        }  
          
         function linksoff(links)  
        {  
         aendern= document.getElementById(links).style;  
         aendern.backgroundColor = "white";  
        }  
        </script>  
          
        <a href="" id="link1" onmouseover="linkon('link1')" onmouseout="linksoff('link1')">Wetter</a>  
        <a href="" id="link2" onmouseover="linkon('link2')" onmouseout="linksoff('link2')">Neues</a>  
        <a href="" id="link3" onmouseover="linkon('link3')" onmouseout="linksoff('link3')">Altes</a>  
        
        

        Mit CSS:

          
        <style type="text/css">  
        a:hover  
        {  
          background-color:yellow;  
        }  
        </style>  
          
        <a href="">Wetter</a>  
        <a href="">Neues</a>  
        <a href="">Altes</a>  
        
        

        Welches empfindest du als besser ;) ?

        1. aeehm wie ich schon gesagt hab soll die aktuell aktive Seite farblich unterlegt sein und nicht die wo ich mit der Maus drauf bin...

          1. Hallo,

            Sofern Du statische html-Seiten verwendest, kannst Du doch jedem link exklusiv auf der entsprechenden Seite eine ID geben, ca. so:

            Seite 1:
            <a id="aktiveSeite">Seite1</a>
            <a href="/seite2.html" title="bla">Seite2</a>
            <a href="/seite3.html" title="bla">Seite3</a>
            <a href="/seite4.html" title="bla">Seite4</a>

            Seite 2:
            <a href="/seite1.html" title="bla">Seite2</a>
            <a id="aktiveSeite">Seite2</a>
            <a href="/seite3.html" title="bla">Seite3</a>
            <a href="/seite4.html" title="bla">Seite4</a>
            usw.
            (das ganze natürlich in eine Liste verpackt, sonst gibt's Mecker von den Synthax-ikern.)

            im CSS dann nur:
            a#aktiveSeite {background:#FAA;} /* schweinchenrosa */

            und fettisch ist die Laube.

            Bei dynamischen Seiten muss das Skript eben den aktuellen Link bestimmen und entspechend die href und title Angaben durch die id Angabe ersetzen. preg_replace() wäre hier ein Freund.

            und fettisch wäre das Wochendendhaus mit Carport und Pool.

            netten Tag
            ^da Powl

            --
            ===============================
            powl.hat-gar-keine-homepage.de/
  2. hi,

    also ich habe 5 verschiedene A elemente die jeweils eine Eigene ID haben, dann hab ich eine Variable die immer eine Dieser IDs als Wert hat und ich moechte jetzt immer das a element was gerade in der Variablen steht mit nem anderen Hintergrund versehen...

    Nachdem du den von Cartun genannten Fehler korrigiert hast, schaust du dir getElementById an, besorgst dir damit die Referenz auf den Link mit der ID, und änderst dann entweder seine Klassenzugehörigkeit, oder über style direkt die jeweilige CSS-Eigenschaft.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. getElementById an, besorgst dir damit die Referenz auf den Link mit der ID, und änderst dann entweder seine Klassenzugehörigkeit, oder über style direkt die jeweilige CSS-Eigenschaft.

      gruß,
      wahsaga

      ich habs mal so versucht aber es funktioniert nicht... (die Funktion wird mit Onload beim Laden des Nachfolgenden Div Bereichs aufgerufen)
         document.all.getElementById(seite).style.setAttribute("backgroundColor", "#000", false);

      1. document.all.getElementById(seite).style.setAttribute("backgroundColor", "#000", false);

        mach daraus einfach mal:
        document.getElementById(seite).style.backgroundColor="#000";