Announcement

Collapse
No announcement yet.

Kontext-Menü

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Kontext-Menü

    Hallo!<br>Ist es möglich zu einem Z.B Button ein eigenes Kontextmenü oder Popup anzuzeigen? Es soll eigene Werte anzeigen und ich muß einen Rückgabewert erfahren -> der Index des gewählten Elements würde schon reichen!!<br><br>GVT

  • #2
    Ich glaube nicht. Du denkst zu sehr an Delphi... )
    Du könntest aber beispielsweise mit JavaScript dein eigenes Menü erstellen. Das wäre die einzige Alternative, die mir einfällt. Die Nachteile liegen auf der Hand: du musst es so programmieren, dass es in möglichst allen Browsern angezeigt wird; und wenn einer JS abschaltet, sieht er nichts davon.

    Mathias

    Comment


    • #3
      Wenn wir einfach ma vergessen das man JS auch ausschalten kann, dann könnte man das so realisieren :

      um generell ein anderes (eigenes) Kontext-Menü angezeigt zu bekommen fängt man den rechtsklick einfach ab
      IE5 : document.oncontextmenu=new Function("ownmenu(); return false;");

      in der Funktion ownmenu() die nun anstatt des aufrufs des kontextmenüs gestartet wird kannst du nun den Layer anzeigen lassen.
      Dazu musst du nur en menü in html schreiben und das in den Layer der dann als Kontextmenü angezeigt werden soll legen. in der funktion ownmenu() wird dann der Layer auf visible=true gesetzt und vorher natürlich noch zu den koordinaten des mauszeigers gesetzt.

      Wenn du nur für einen Button das ganze willst, dann geht das am einfachsten, wenn die Seite nicht scrollbar ist. Denn dann ist der button immer an der selben stelle und hat somit ne feste koordinate.
      Dann kannst du einfach vor den aufruf der funktion ownmenu() testen, ob die maus über dem button ist oder nicht und danach entscheiden ob das menü angezeigt werden soll oder nicht (return false um es nicht zu zeigen return true um es zu zeigen).

      Wenn die Seite aber scrollbar ist, dann musst du mit du die relative Position des Buttons ausfindig machen und die scrollwerte usw dazu nehmen.. wie du auf sowas zugreifen kannst steht bei msn in irgendnem workshop.. sorry das ich jetzt nich weis in welchem

      wenn du das ganze auch noch für netscape, opera, mozilla, mac-ie usw. machen willst, dann lass es lieber gleich bleiben, denn der aufwand um das ganze zu realisieren steht glaube nicht im verhältnis zum nutzen der sache

      hth
      Sebastian Göt

      Comment


      • #4
        unter www.cross-browser.com gibts ne coole lib für layer
        (funktioniert dann auch mit nicht ie)
        die beispiele geben einen eintrug wie du das manchen kanns

        Comment

        Working...
        X