Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

navigations-tree

Empfohlene Antworten

Veröffentlicht

hallo zusammen...

als javascript nixkenner hab ich mal ne frage:

so erstmal den code....

<div id="item1" class="parent">

<table valign=top border="0" cellpadding="0" cellspacing="0" text decoration=none>

<td valign=left>

<a href="javascript:ExpandShrink(1)">

 Kontakt

</a>

</td>

</tr>

</table>

</div>

<div id="item2" class="child">

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td>

</td>

<td align="left">

    Tympelfelz

</td>

</tr>

<tr>

<td>

</td>

<td align="left" valign="center">

    Daynon

</td>

</tr>

</table>

</div>

<br>

<div id="item3" class="parent">

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td valign=top>

<a href="javascript:ExpandShrink(3)">

 Berichte

</a>

</td>

</tr>

</table>

</div>

<div id="item4" class="child">

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td align="left">

    InTime-Berichte

</td>

</tr>

<tr>

<td align="left" valign="center">

    OutTime-Berichte

</td>

</tr>

</table>

nun das problem:

wenn ich z.b. auf den link "Kontakt" klicke, klappt das menue wie gewollt auf...wenn ich mir nun einen anderen menuepunkt aussuche, dann öffnet dieser sich auch...ok....passt ja...aber wie krieg ich den menuepunkt kontakt in einem wieder zu, so dass immer nur ein menuepunkt ausgeklappt ist??????

gruss,

derBoes

  • Autor
Original geschrieben von beebof

hmmmm.... is ja ganz nett dein code... aber irgendwie fehlt der javascript-source für "ExpandShrink(x)"...

der wäre auch noch ganz nett :)

*-cta- verweist auf die uhrzeit*

:D:D:D

//============================================================================

// function ExpandShrink()

//

// Shows or hides an item in the tree identified by iItem

//

// Numeration is as follows:

//

// parent(0)

// |

// +-- child(1)

// parent(2)

// |

// +-- child(3)

// ...

//============================================================================

function ExpandShrink(iItem)

{

if(ns)

{

if(document.layers[iItem].visibility == "show")

{

for(var iI=iItem+1; iI<document.layers.length; iI++)

{

document.layers[iI].top -= document.layers[iItem].clip.height;

}

document.layers[iItem].visibility = "hide";

}

else if(document.layers[iItem].visibility == "hide")

{

for(var iI=iItem+1; iI<document.layers.length; iI++)

{

document.layers[iI].top += document.layers[iItem].clip.height;

}

document.layers[iItem].visibility = "show";

}

}

if(ie)

{

if(document.all["item"+(iItem+1)].style.display == "none" || document.all["item"+(iItem+1)].style.display == "")

{

document.all["item"+(iItem+1)].style.display = "block";

}

else if(document.all["item"+(iItem+1)].style.display == "block")

{

document.all["item"+(iItem+1)].style.display = "none";

}

}

}

//-->

</script>

kannste damit was anfangen???

ich kann dir leider nur beim (ie) teil helfen - von ns hab ich keine ahnung...

derzeitig funktioniert das ding ja noch so, dass es sich wieder zuklappt, wenn man nochmals draufklickt. richtig? soll das auch so bleiben? falls nich, kannste einfach folgendes mit eingeben:

if(ie)

{

document.all["item2"].style.display="none";

document.all["item4"].style.display="none";

....kommt drauf an, wieviele untermenüs du hast

if(document.all["item"+(iItem+1)].style.display == "none" || document.all["item"+(iItem+1)].style.display == "")

{

document.all["item"+(iItem+1)].style.display = "block";

}

else if(document.all["item"+(iItem+1)].style.display == "block")

{

document.all["item"+(iItem+1)].style.display = "none";

}

}

is zwar wahrscheinlich nicht die beste lösung, aber sollte funktionieren...

jaja.... wenn man mal kurz drüber nachdenkt, müsste das so im (ns) teil aussehen.... da garantier ich aber für nix...

if(ns)

{

document.layers[2].visibility="hide";

document.layers[4].visibility="hide";

...

if(document.layers[iItem].visibility == "show")

{

for(var iI=iItem+1; iI<document.layers.length; iI++)

{

document.layers[iI].top -= document.layers[iItem].clip.height;

}

document.layers[iItem].visibility = "hide";

}

else if(document.layers[iItem].visibility == "hide")

{

for(var iI=iItem+1; iI<document.layers.length; iI++)

{

document.layers[iI].top += document.layers[iItem].clip.height;

}

document.layers[iItem].visibility = "show";

}

}

ich hoffe, ich konnte dir helfen...

Original geschrieben von -cta-

soweit ok....nur gehen die dinger nimmer zu wenn ich auf sie selber klicke.....:(

ähh.... :confused: hä? :confused:

also das musst du mir nochmal genauer erklären...

was geht wann wie zu wenn man worauf klickt?

  • Autor
Original geschrieben von beebof

ähh.... :confused: hä? :confused:

also das musst du mir nochmal genauer erklären...

was geht wann wie zu wenn man worauf klickt?

moment...ich poste mal den link....

Original geschrieben von -cta-

http://www.derboesiminter.net/Portalseite/Portalseite1.html

das ist nur mal ein vorläufiger designvorschlag...mehr nicht...also nicht lästern....ok???

:D:D:D:D

ja nee... also da is ja nun die änderung, die ich da mal vorgeschlagen habe, nicht mit drin, richtig?

also wenn ich das jetzt richtig verstehe, willst du nun, wenn man nochmals auf "kontakt" klickt, also nachdem das ding schon auf ist, das es wieder zugeht, oder?

  • Autor
Original geschrieben von beebof

ja nee... also da is ja nun die änderung, die ich da mal vorgeschlagen habe, nicht mit drin, richtig?

also wenn ich das jetzt richtig verstehe, willst du nun, wenn man nochmals auf "kontakt" klickt, also nachdem das ding schon auf ist, das es wieder zugeht, oder?

siehe oben:D

  • Autor
Original geschrieben von beebof

habs gesehen. :) sieht doch gut aus... :)

und was wollteste nu noch ändern?

hmm...

pass auf...

klick mal auf z.b. kontakt...

dann klappts auf....

jklick nochma drauf....

es bleibt auf....geht also nicht wiedda zu....wäre mir lieber....

obwohl....hmmm.....so ists auch ok....hmmm....

hmmm.... da musste die routine a bissel umschreiben...

*grübel*

vielleicht so:

<script language="JavaScript">

<!--

function ExpandShrink(iItem)

{

iItem++;

if (ns)

{

for (var i=2; i<=maximale Anzahl an Untermenüs*2 - hier 12;i+=2)

{

if (i==iItem)

{

if (document.layers[i ].visibility=="show")

{

document.layers[i ].visibility="hide";

}

else

{

document.layers[i ].visibility="show";

}

}

else

{

document.layers[i ].visibility="hide";

}

}

}

if (ie)

{

for (var i=2; i<=maximale Anzahl an Untermenüs*2 - hier 12;i+=2)

{

if (i==iItem)

{

if (document.all["item"+i].style.display=="block")

{

document.all["item"+i].style.display="none";

}

else

{

document.all["item"+i].style.display="block";

}

}

else

{

document.all["item"+i].style.display="none";

}

}

}

}

// -->

</script>

so sollte es klappen. bin mir aber nich wirklich sicher... musst mal probieren

Nachtrag: an den stellen, wo '[i ]' steht, musste das leerzeichen wegnehmen - das gehört da eigentlich nich hin...

  • Autor
Original geschrieben von beebof

hmmm.... da musste die routine a bissel umschreiben...

*grübel*

vielleicht so:

<script language="JavaScript">

<!--

....

// -->

</script>

so sollte es klappen. bin mir aber nich wirklich sicher... musst mal probieren

ich versuchs mal......thx...:)

  • Autor
Original geschrieben von -cta-

ich versuchs mal......thx...:)

nicht schlecht...erinner mich dran, wenn wir uns mal treffen sollten, dir ein bier auszugeben.......:D:D:D:D

Original geschrieben von -cta-

nicht schlecht...erinner mich dran, wenn wir uns mal treffen sollten, dir ein bier auszugeben.......:D:D:D:D

funktionierts? fein :)

und zur not werd ich dir einfach diese seite nochmals vorhalten....

Mach ein HTML-Menü. In Opera funzt da gar nix.

Und wenn Du Browser erkennen willst, dann niemals anhand eine Abfrage wie:

if (document.all)

..Das kann sehr oft in die Hose gehen und ist überhaupt nicht zukunftssicher. Überhaupt: Wenn es denn schon ein Java-Script Menü sein soll (wogegen jede Vernunft und Erfahrung spricht), dann würde ich an deiner stelle dieses NUR dem Explorer anbieten, und allen anderen Browsern ein statisches HTML-Menü aufzwängen.

Guck dir mal zur Browsererkennung das Codesnipsel an (vorsicht: Umbruch in URL möglich):

http://www.mozilla.org/docs/web-developer/sniffer/browser_type.html

und denk dran, dass auch der USER_AGENT nicht immer korrekten Aufschluss gibt. Mitunter gibt es Software (z.B. norton) die es erlaubt, den USER_AGENT zu manipulieren. Alleine deswegen schon: statisches HTML-Menü.

Gruss

Matze

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.