tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
1188
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    lisa5 lisa5 ist offline Rookie
    Registriert seit
    Jan 2010
    Beiträge
    9
    Hallo,
    ich sitze seit einiger Zeit daran, etwas mit Javascript zu schreiben. Leider klappt es nicht so wie ich es mir vorstelle, weil ich leider noch nicht so viel Erfahrungen habe. Wenn Javascript deaktiviert ist, sollen alle divs angezeigt werden. Wenn Javascript aktiviert ist, sollen zunächst alle divs nicht angezeigt werden und wenn man dann auf einen Link klickt, soll eines der divs angezeigt werden. Klickt man auf einen anderen Link, so soll ein anderes div sichtbar und alle anderen divs unsichtbar sein.

    Code :
    1
    2
    3
    4
    5
    6
    7
    
    function show(divid) {
    d=document;
    d.getElementById("b").style.display="none";
    d.getElementById("c").style.display="none";
    d.getElementById("d").style.display="none";
    d.getElementById(divid).style.display="inline";
    }

    HTML-Code:
    <a href="#" onclick="show('b')">Intro</a>
    <div id="b" style="display:inline">div b</div>
    <a href="#" onclick="show('c')">News</a>
    <div id="c" style="display:inline">div c</div>
    <a href="#" onclick="show('d')">Info</a>
     <div id="d" style="display:inline">div d</div>
    Bei mir werden immer alle divs angezeigt, egal ob Javascript aktiviert oder deaktiviert ist. Kann mir bitte jemand sagen, was ich falsch mache? Im Internet habe ich es genauso gefunden. Vielen Dank.
    Viele Grüße
    Lisa
     

  2. #2
    Maik Tutorials.de Gastzugang
    Moin,
    Zitat Zitat von lisa5 Beitrag anzeigen
    Bei mir werden immer alle divs angezeigt, egal ob Javascript aktiviert oder deaktiviert ist. Kann mir bitte jemand sagen, was ich falsch mache? Im Internet habe ich es genauso gefunden.
    den Script-Code hast du aus dem hiesigen JS-Tutorial Basic DHTML Menü entnommen

    Die Anweisungen bzgl. der Sichtbarkeit der Objekte sind an die Funktion show(divid) gekoppelt, d.h. wenn die Seite mit aktiviertem JS aufgerufen wird, geschieht solange nichts, bis die Funktion vom Benutzer "aktiv" angestoßen wird.

    Folglich muß die Funktion automatisch aufgerufen werden, nachdem die Seite vom Browser vollständig geladen wurde.

    Dies geschieht mit Hilfe des window.onload-Events:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    function show(divid) {
    d=document;
    d.getElementById("b").style.display="none";
    d.getElementById("c").style.display="none";
    d.getElementById("d").style.display="none";
    d.getElementById(divid).style.display="inline";
    }
     
    [B]window.onload = show;[/B]


    mfg Maik
     

  3. #3
    lisa5 lisa5 ist offline Rookie
    Registriert seit
    Jan 2010
    Beiträge
    9
    Hallo,
    danke für die schnelle Antowort. Ich habe die Zeile window.onload = show; ergänzt. Allerdings werden immer noch alle divs angezeigt, egal ob Javascript aktiviert oder deaktiviert ist.
    Viele Grüße
    Lisa
     

  4. #4
    Maik Tutorials.de Gastzugang
    Entweder ist dir irgendwo ein Fehler unterlaufen, oder du mußt zwischendurch mal den Browsercache leeren, und anschließend die Seite neu aufrufen, denn bei mir funktioniert's wie gewünscht.

    HTML-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
    <head>
    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
    <meta name="author" content="Maik" />
    <meta name="date" content="2010-04-30" />
    
    <title>tutorials.de | divs ausblenden, wenn Javascript aktiviert ist</title>
    
    <script type="text/javascript">
    function show(divid) {
    d=document;
    d.getElementById("b").style.display="none";
    d.getElementById("c").style.display="none";
    d.getElementById("d").style.display="none";
    d.getElementById(divid).style.display="inline";
    }
    
    window.onload = function() {
    show();
    }
    </script>
    
    </head>
    <body>
    
    <ul style="list-style:none;">
      <li>
        <a href="#" onclick="show('b')">Intro</a>
        <div id="b" style="display:inline" >div b</div> 
        <a href="#" onclick="show('c')">News</a>
        <div id="c" style="display:inline">div c</div>
        <a href="#" onclick="show('d')">Info</a>
        <div id="d" style="display:inline">div d</div>
      </li>
    </ul>
    
    </body>
    </html>

    mfg Maik
     

  5. #5
    lisa5 lisa5 ist offline Rookie
    Registriert seit
    Jan 2010
    Beiträge
    9
    Vielen Dank für deine Hilfe. Es funktioniert jetzt
     

Ähnliche Themen

  1. Menüpunkt aktivieren, wenn entsprechender TabFolder Reiter aktiviert wurde
    Von haudek im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 2
    Letzter Beitrag: 07.01.08, 18:14
  2. Antworten: 9
    Letzter Beitrag: 28.09.07, 10:52
  3. Popup wenn link aktiviert
    Von piti66 im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 23.07.05, 22:30
  4. Javascript aktiviert?
    Von Voggi im Forum PHP
    Antworten: 10
    Letzter Beitrag: 10.10.04, 19:45
  5. Wie abragen, ob JavaScript aktiviert ?
    Von Nicole_B im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 28.02.04, 22:38

Stichworte