Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Layer erscheint erst nach doppelklick auf den Link
Frage
der Layer soll beim onklick auf den Link erscheinen allerdings muss man doppelt klicken damit er erscheint. Versteckt man ihn wieder und öffnet ihn erneut so bedarf es nur noch einen Click! Kann mir dabei jemand weiter helfen?
###### Style ########
<STYLE TYPE="text/css">
<!--
.para {
font-size: 10px;
margin-bottom: 10px;
visibility: visible;
display: none;
position: relative;}
-->
</STYLE>
####################
##### JAVA ##########
<script language="JavaScript">
function blocking(nr)
{
if (document.layers)
{
current = (document.layers[nr].display == ´none´) ? ´block´ : ´none´;
document.layers[nr].display = current;
}
else if (document.all)
{
current = (document.all[nr].style.display == ´none´) ? ´block´ : ´none´;
document.all[nr].style.display = current;
}
else if (document.getElementById)
{
vista = (document.getElementById(nr).style.display == ´none´) ? ´block´ : ´none´;
document.getElementById(nr).style.display = vista;
}
}
</script>
##################################
######## LINK & LAYER ##############
print " <A CLASS=\"page\" HREF=\"#\" onClick=\"blocking(´number1´); return false;\"><img src=\"images/max.gif\" alt=\"Beschreibung anzeigen\" border=\"0\" /></A>";
print"<span CLASS=\"para\" ID=\"number1\">$o->art_notes</span>";
[*][quote][sup][i]Admininfo: bitte vermeide Mehrfachanfragen in verschiedenen, bzw. gleichen Gruppen.
[url=https://supportnet.de/showfaq/1085310][u][b]Ein FAQ dazu.[/b][/u][/url][/i][/sup][/quote]
Antwort 1 von rfb
das Problem liegt bei
dreh die Abfrage um in
dann klappt es beim ersten mal
Zitat:
document.getElementById(nr).style.display == ´none´
beim ersten Aufruf ist dort noch nix definiert, also ist dieser Wert leer, mithin also nicht "none"document.getElementById(nr).style.display == ´none´
dreh die Abfrage um in
document.getElementById(nr).style.display != ´block´
dann klappt es beim ersten mal
Antwort 2 von rfb
PS: natürlich gibts das gleiche Problem vermutlich in den oberen Abfragen. Die kannst du aber auch getrost weglassen, da die neueren grafikorientierten Browser alle document.getElementById kennen (Nicht klappts mit dem Netscape 4, aber der kennt auch "display:block" nicht).