Phil Z.: Layer bei onclick öffnen klappt nicht

Hallo, ich habe einen Layer den ich bei Klick auf einen Link öffnen will. Falls JS deaktiviert ist soll die Seite entsprechend als Ersatz angezeigt werde, also praktisch ohne "Effekt"(öffnen eines bunten Kastens).

<a href='index.php?test=cool'  
onclick="openTest(m1);return false;\">test</a>  
  
  
<div id="m1" class='m'>  
   geschriebens..  
</div>

JS-Code:

function openTest(ttz){ttz = ttz.hash.substr(1) || false  
var hg = document.getElementById(ttz)  
return !ttz || hg == null ? true : (hg.style.display = hg.style.display == 'block' ? 'none' : 'block') && false}

CSS-Code:

.m{  
 width:100%;  
 height:100%;  
 top:0px;  
 left:0px;  
 position:fixed;  
 background-image:url(../img/1pixel_schwarz_opasity.png);  
 background-repeat:repeat;  
 display:none;  
 text-align:center;  
}  
.mi{  
 text-align:center;  
 border:1px solid #000000;  
 width:600px;  
 height:500px;  
 left:50%;  
    margin-left:-300px;  /* Um die Hälfte der Breite nach links schieben */  
 top:50%;  
    margin-top:-250px;   /* Um die Hälfte der Höhe nach oben schieben */  
 position:fixed;  
 background-color:#ffffff;  
}

Klappt nicht... woran liegts?

Lg

Phil Z.

  1. Hi,

    <a href='index.php?test=cool'
    onclick="openTest(m1);return false;">test</a>

    Wo hast du eine Variable oder ein Objekt namens m1 definiert?

    function openTest(ttz){
      ttz = ttz.hash.substr(1) || false[/code]

    Wenn das uebergebene Objekt ttz kein Unterobjekt hash besitzt, dann wirft auch der Versuch des Zugriffs auf ttz.hash.substr einen Fehler.

    MfG ChrisB

    1. Hi,

      <a href='index.php?test=cool'
      onclick="openTest(m1);return false;">test</a>

      Wo hast du eine Variable oder ein Objekt namens m1 definiert?

      Hier:
      <div id="m1" class='m'>
         geschriebens..
      </div>

      oder seh ich das falsch? Bin nicht so der JS experte ^^.

      lg

      Phil

      1. Wo hast du eine Variable oder ein Objekt namens m1 definiert?
        Hier:
        <div id="m1" class='m'>
           geschriebens..
        </div>

        auf dieses DIV kannst du per JavaScript zB mit document.getElementById("m1") zugreifen, keineswegs direkt mit m1

  2. Hey, ich hab nun geschafft das sich der Layer öffnet nur leitet er auch zur angegebenen Seite weiter, dies soll er allerdings nur tun wenn JS deaktiviert ist!

    <a href='testbericht.php?show=test'
    onclick="return turnOn('m1');return false;"'>
    Ausf&uuml;hrlicher Testbericht
    </a>

    <div id="m2" class='m'>
    geschriebenes...
    </div>

    JS-Code:
    function turnOn(oname) {
    document.getElementById(oname).style.display = 'block';
    }

    woran liegts? ich dachte mit einem "return false;" wäre die sache erledigt..

    lg

    Phil Z.

  3. Hey,

    es klappt alles wunderbar nur das return vor dem Funktionsaufruf musste weg, danke!

    lg