kostenloser Webspace werbefrei: lima-city


contextmenu für jedes Seitenteil ändern

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    speedtouch92

    Kostenloser Webspace von speedtouch92

    speedtouch92 hat kostenlosen Webspace.

    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+">&nbsp;Zur&uuml;ck"+sp5+sp5+sp2+"</a></td></tr>"+
    
    		"<tr><td><a class='menu' href='javascript:history.forward()'"+oF+">&nbsp;Vorw&auml;rts"+sp5+sp2+sp2+"</a></td></tr>"+
    
    		"<tr><td><hr class='menu'><a class='menu' href='javascript:location.reload()'"+oF+">&nbsp;Aktualisieren"+sp2+sp2+"</a></td></tr>"+
    
    		"<tr><td><a class='menu' href='javascript:viewSource()'"+oF+">&nbsp;Quelltext"+sp5+sp2+sp2+"</a></td></tr>"+
    
    		"<tr><td><a class='menu' href='javascript:print()'"+oF+">&nbsp;Drucken"+sp5+sp5+"</a></td></tr>"+
    
    		"<tr><td><hr class='menu'><a class='menu' href='javascript:openFrameInNewWindow()' "+oF+">&nbsp;Neues&nbsp;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
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. 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.
  4. Autor dieses Themas

    speedtouch92

    Kostenloser Webspace von speedtouch92

    speedtouch92 hat kostenlosen Webspace.

    Ich denke schon, dass das geht.
    Vieleicht <table border="2" width="100%" oncontextmenu="javasctipt:blabla">
    </table>

    ich suche nur die javascriptfunktionen
  5. 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 :wink:
  6. Autor dieses Themas

    speedtouch92

    Kostenloser Webspace von speedtouch92

    speedtouch92 hat kostenlosen Webspace.

    Nunja, bei Yahoo-mail 2 BETA geht das, da gibt es f?r jede mail ein eigenes Kontextmen?
    (?ffnen, l?schen, usw...)
  7. Echt? Und du bist sicher, dass es 100%ig keine Frames sind? Ich meine, ich kenne mich mit Yahoo nicht aus, nutze das nicht, aber viele Mail-Anbieter haben Frames auf ihren Seiten.
  8. Autor dieses Themas

    speedtouch92

    Kostenloser Webspace von speedtouch92

    speedtouch92 hat kostenlosen Webspace.

    Ob yahoo frames benutzt wei? ich nicht, ich habe mir ja im Code nichtmal das men? finden:mad:

    Beitrag ge?ndert am 20.08.2006 19:39 von speedtouch92
  9. Nun, die benutzen sicher PHP ... und da siehst du eh nie den kompletten Code, weil das ja serverseitig ausgef?hrt wird.
  10. Autor dieses Themas

    speedtouch92

    Kostenloser Webspace von speedtouch92

    speedtouch92 hat kostenlosen Webspace.

    Naja, auber ich denke schon, dass das mit Javascript ist, da sonst bei jedem Klick die Seite neu geladen werden muss.
  11. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!