contextmenu für jedes Seitenteil ändern
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
abstandshalter
all
anbieter
anzeigen
beispiel
beitrag
bestimmten tabelle
body
fram
hauptseite
klicken
menu
nutz
pipapo
quelltext
rechter mausklick
seitenteil
status
versteck
vorhabe
-
Hallo, ich habe ein Script, dass gibt bei rechtsklick ein eigenes Kontextmen? ausgibt. nun m?chte ich, dass dieses Men? f?r jeden Seitenteil ge?ndert wird.
(Ihr k?nnt mir auch ein anderes Script machen/geben)
Beispiel:
Hauptseite (?berall)
Das men? __A__
in einer bestimmten Tabelle oder auf einem bestimmten Link soll das Men? __B__ angezeigt werden.
Zudem m?chte ich es noch selbst erwietern.
Achja, der code:
// Nur f?r IE 5+ und NN 6+ ie5=(document.getElementById && document.all && document.styleSheets)?1:0; nn6=(document.getElementById && !document.all)?1:0; // Kontextmen? initialisieren if (ie5 || nn6) { menuWidth=122, menuHeight=183; menuStatus=0; sp2=" "; sp5=sp2+sp2+" "; // Leerzeichen als Abstandshalter (flexibler und code-sparender als eine aufwendige Tabellenkonstruktion) oF="onfocus='if(this.blur)this.blur()'"; // Um h?sslichen Linkrahmen in einigen Browsern zu vermeiden document.write( "<style type='text/css'>"+ "a.menu {text-decoration:none;font-family:Verdana,Arial;font-size:80%}"+ "a.menu:link,a.menu:visited {text-decoration:none;color:#000000}"+ "a.menu:hover,a.menu:active {text-decoration:none;background-color:#083194;color:#FFFFFF}"+ // "a.menu:hover,a.menu:active {text-decoration:none;background-color:#F0F8FF;color:#000040}"+ "hr.menu {border:0px;height:1px;background-color:#B0C4DE;color:#B0C4DE}</style>"+ "<div id='menu' style='position:absolute;top:-250;left:0;z-index:100'>"+ "<table cellpadding='5' cellspacing='0' width='"+menuWidth+"' height='"+menuHeight+"' style='border-style:outset;border-width:1;border-color:#3a6c96;background-color:#E0E0E0'>"+ "<tr><td><a class='menu' href='javascript:history.back()'"+oF+"> Zurück"+sp5+sp5+sp2+"</a></td></tr>"+ "<tr><td><a class='menu' href='javascript:history.forward()'"+oF+"> Vorwärts"+sp5+sp2+sp2+"</a></td></tr>"+ "<tr><td><hr class='menu'><a class='menu' href='javascript:location.reload()'"+oF+"> Aktualisieren"+sp2+sp2+"</a></td></tr>"+ "<tr><td><a class='menu' href='javascript:viewSource()'"+oF+"> Quelltext"+sp5+sp2+sp2+"</a></td></tr>"+ "<tr><td><a class='menu' href='javascript:print()'"+oF+"> Drucken"+sp5+sp5+"</a></td></tr>"+ "<tr><td><hr class='menu'><a class='menu' href='javascript:openFrameInNewWindow()' "+oF+"> Neues Fenster"+sp2+"</a></td></tr>"+ "</table></div>"); // Rechter Mausklick: Men? anzeigen, linker Mausklick: Men? verstecken // document.oncontextmenu=showMenu; //oncontextmenu geht nicht bei NN 6.01 document.onmouseup=hideMenu; } // Kontextmen? anzeigen function showMenu(e) { if(ie5) { if(event.clientX>menuWidth) xPos=event.clientX-menuWidth+document.body.scrollLeft; else xPos=event.clientX+document.body.scrollLeft; if (event.clientY>menuHeight) yPos=event.clientY-menuHeight+document.body.scrollTop; else yPos=event.clientY+document.body.scrollTop; } else { if(e.pageX>menuWidth+window.pageXOffset) xPos=e.pageX-menuWidth; else xPos=e.pageX; if(e.pageY>menuHeight+window.pageYOffset) yPos=e.pageY-menuHeight; else yPos=e.pageY; } document.getElementById("menu").style.left=xPos; document.getElementById("menu").style.top=yPos; menuStatus=1; return false; } // Kontextmen? verstecken function hideMenu(e) { if (menuStatus==1 && ((ie5 && event.button==1) || (nn6 && e.which==1))) { setTimeout("document.getElementById('menu').style.top=-250",250); menuStatus=0; } } // Quelltext anzeigen function viewSource() { var w=window.open("view-source:"+window.location,'','resizable=1,scrollbars=1'); } // Seite in neuem Fenster ?ffnen function openFrameInNewWindow() { var w=window.open(window.location,'','resizable=1,scrollbars=1,status=1,location=1,menubar=1,toolbar=1'); }
Beitrag ge?ndert am 16.08.2006 22:24 von speedtouch92 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Also, ich bin mir jetzt zwar nicht 100%ig sicher, aber ich glaube nicht, dass so etwas m?glich ist. Du hast ja auch ?blicherweise pro Seite nur ein Kontextmen?, richtig? Die einzige M?glichkeit, die ich da sehe, w?re, die Seite mit Frames aufzubauen. Aber wie gesagt, 100%ig sicher bin ich mir da nat?rlich nicht.
-
Ich denke schon, dass das geht.
Vieleicht <table border="2" width="100%" oncontextmenu="javasctipt:blabla">
</table>
ich suche nur die javascriptfunktionen -
Hm ... naja ... ich hatte so eine ?hnliche Idee auch schon mal und musste dann feststellen (auch mit Nachfragen und pipapo), dass das was ich vorhabe nicht funzt ... wenn ich mich nicht ganz irre, war es auch mehrere Kontaktmen?s auf einer Seite.
Aber hey, vielleicht hast du ja mehr Gl?ck als ich und findest tats?chlich eine L?sung ... aber dann geb mir mal Bescheid, ja? Bin an so etwas auch interessiert -
Nunja, bei Yahoo-mail 2 BETA geht das, da gibt es f?r jede mail ein eigenes Kontextmen?
(?ffnen, l?schen, usw...) -
Ob yahoo frames benutzt wei? ich nicht, ich habe mir ja im Code nichtmal das men? finden
Beitrag ge?ndert am 20.08.2006 19:39 von speedtouch92 -
Nun, die benutzen sicher PHP ... und da siehst du eh nie den kompletten Code, weil das ja serverseitig ausgef?hrt wird.
-
Naja, auber ich denke schon, dass das mit Javascript ist, da sonst bei jedem Klick die Seite neu geladen werden muss.
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage