begin process at 2010 03 19 20:06:39
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Menu & Co

 > MENU CONTEXTUEL PERSONNALISABLE POUR CLIC DROIT

MENU CONTEXTUEL PERSONNALISABLE POUR CLIC DROIT


 Information sur la source

Note :
7,44 / 10 - par 9 personnes
7,44 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Menu & Co Classé sous :menu, contextuel, javascript, windows, design Niveau :Débutant Date de création :29/09/2006 Date de mise à jour :14/11/2006 23:03:08 Vu / téléchargé :21 719 / 3 533

Auteur : rubiks10

Ecrire un message privé
Commentaire sur cette source (35)
Ajouter un commentaire et/ou une note

 Description

Ma librairie permet de creer des menus contextuels personnalisable très facilement!!

Tres complet vous pouvez egalement mettre des icones devant ou après vos element, puis la simplicité de l'instanciation d'un menu permet de creer des menus a la volée... ( voir l'exemple dans le fichier source )

Le rendu final est vraiment TOP!!!

A essayer absolument!!!


 Conclusion

Merci de laisser vos commentaires et vos eventuels problemes rencontrés.
Encore merci

-- The Rubik's Man --

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

20 octobre 2006 18:10:02 :
Mise a jour d'un bug de détection des coordonnées de la souris sur les élements en position relative. Exemples en plus pour les personnes qui veulent afficher un menu différent sur des divs Et le tout compatible pour tous les navigateurs...
07 novembre 2006 01:49:18 :
Correction des bugs avec le doctype Correction du bug du scroll avec les doctypes Fonctionne désormais avec les doctypes HTML 4.01 trans ou strict ainsi que XHTML 1.0 trans ou strict
07 novembre 2006 12:44:09 :
Correction du bug de suppression des EventListener déjà définis lors de l'ouverture d'un menu contextuel
14 novembre 2006 23:03:08 :
Correction du bug sous IE apparu après la dernière mise à jour. ( Normalement tout est OK... )

 Sources du même auteur

Source avec Zip LIBRAIRIE AUTOCOMPLETION (AJAX OU LOCAL, CHOIX D'EFFETS, ENT...
Source avec Zip MENU CONTEXTUEL PERSONNALISABLE AVEC CHOIX D'IMAGES
Source avec Zip RECHERCHE AVEC AUTOCOMPLETION AJAX ( AVEC NAVIGATION CLAVIER...
Source avec Zip LIBRAIRIE UTF8 (CODAGE ET DECODAGE À LA VOLÉE )
Source avec Zip AJAX : LIBRAIRIE SIMPLIFIÉE PERMETTANT EN 1 LIGNE DE FAIRE D...

 Sources de la même categorie

Source avec Zip Source avec une capture MENU VERTICALE GAUCHE ET DROIT DEROULANT par kazma
Source avec Zip Source avec une capture MENU VERTICALE EN TRANSPARENCE par dlvains
Source avec Zip Source avec une capture MENU DÉROULANT EN IMAGES par dlvains
Source avec Zip TBFRAME: TAB BROWSING FRAME par triumphs
Source avec Zip Source avec une capture MENU PRINCIPAL par ali1987

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture JVSMENU : MENUS CLASSIQUES ET CONTEXTUELS AVANCÉS EN JAVASCR... par emericv
Source avec Zip MENU CONTEXTUEL SUR BALISE DE SON CHOIX par jypees
Source avec Zip MENU CONTEXTUEL GRÂCE AU CLICK DROIT DE LA SOURIS AVEC DES M... par OB1_12
Source avec Zip MENU CONTEXTUEL PERSONNALISABLE AVEC CHOIX D'IMAGES par rubiks10
Source avec Zip MENU DE STYLE WINDOW AVEC DES ICONES par Arto_8000

Commentaires et avis

Commentaire de rubiks10 le 29/09/2006 23:04:25

A vos commentaires merci !!!
Bonne prog a tous

-- The Rubik's Man --

Commentaire de FREMYCOMPANY le 30/09/2006 11:40:53

Intéressant...

Peut-être que l'effet de profondeur pourrait être moins marqué, mais c'est pas si mal...

J'ai moi-même quelques projets non-finis sur les menus contextuels (faisant partie d'un projet JS-WindowForms)...

Je pense qu'une idée pourrait être aussi la possibilité de mettre une image de fond

Commentaire de rubiks10 le 30/09/2006 14:30:41

FREMY je sais pas si tu as bien regardé le code source et la documentation mais pour l'effet de profondeur qui pourrait etre moins marqué... cela est entierement personnalisable et mes exemples sont faits pour montrer aussi les extremes. voila voila tu baisses le padding de l'ombre dans l'instanciation du menu et le tour est joué

--The Rubik's Man--

Commentaire de FREMYCOMPANY le 30/09/2006 14:53:07

Ca j'avais vu ;)
Je parle de l'utilisation d'un effet de transparence (CSS:opacity)

Commentaire de rekam le 02/10/2006 13:18:12

Excellent, et vraiment simple (autant l'instanciation que le code).

Petite question : envisage-tu de gérer des "sous-menus contextuels" ? ça serait vraiment, mais alors vraiment, monstre top extra ;)

a+
Tafel

Commentaire de rubiks10 le 02/10/2006 22:45:32

Salut Rekam

Ben en fait c'est une idée de faire des sous-menus contextuels... mais bon cela revient au meme que de creer un menu javascript a part qu'on l'affiche lors d'un clic droit.

Et contrairement aux menus contextuels purs il existe de nombreux codes sources permettant de creer des menus a plusieurs niveaux donc il faut juste modifier le code afin qu'il s'affiche a coté du curseur lors d'un clic droit.

Ce que j'ai voulu faire c'est vraiment faire un menu contextuel comme on en trouve dans beaucoup de programmes ... simple sans sous niveaux.

Voila mais si cela interesse de nombreuses personnes d'avoir des sous-niveaux alors je mettrai a jour mon module avec plaisir.
Bonne prog a tous
--The Rubik's Man--

Commentaire de rekam le 03/10/2006 10:01:10

Re,
à mon sens, c'est hyper pratique d'avoir des sous-menus, même sur un clic droit. Surtout dans une optique de programme à plugin. Genre, t'as un ensemble de menu, tu rajoutes un plugin qui aurait encore 5 ou 6 menus contextuels, ben je t'assures que t'es content si t'as un 2e niveau de menu ;) !

Comme je te l'ai dit, ça me serait bien utile. Maintenant, je suis peut-être le seul... :'|

Bref, c'est toi qui décide, au final ;)

a+
rekam

Commentaire de FREMYCOMPANY le 03/10/2006 18:29:55

Mettre des sous-menus est assez simple en sois, une fois qu'on a implémenté le menu de base ;)

A condition du moins que le menu soit bien pensé (et oui, c'est quand on ajoute des trucs à un code qu'on voit si il est bien fait ou non ;))

Commentaire de Azema le 06/10/2006 20:51:09

Tres interressant, j'ai essaye rapidement et je trouve ca tres pratique.

Commentaire de arnolem le 12/10/2006 11:31:22

petite question, comment faire pour que le menu se face directement sur le click droit sur un lien, sans a avoir a faire un clic gauche avant ?

Commentaire de rubiks10 le 13/10/2006 16:52:42

Salut Arnolem

Ben tout simplement tu crees une fonction permettant de creer un menu... par exemple tu gardes la fonction d'exemple 1 et tu mets dans la balise body l'appel a cette fonction lors de l'evenement onload

Pour les bleus de javascript et html...

<body onload="tafonction()">

voila
bonne prog

--The Rubik's Man--

Commentaire de arnolem le 13/10/2006 20:30:39

merci mais ce n'est pas de ça que je parlais, en fait se que je veux c'est avoir un menu contextuel différent selon les liens, par exemple si je fais un clic droit sur un lien j'ai un menu et si je fais un clic droit sur un autre lien, j'en ai un autre.
J'ai essayé de chargé le menu sur un onMouseOver mais je n'ai pas eu de succès.

Commentaire de rubiks10 le 15/10/2006 23:55:50

Ah ok...

Ben bizarre car sur un onmouseover si la fonction se lance le menu doit pouvoir se charger!!! Enfin je vais tester ca et je te tiens au courant

-- The Rubik's Man --

Commentaire de arnolem le 16/10/2006 09:32:26

le soucis que j'ai c'est que la fonction ce charge mais le clic droit ne fonctionne que en dehors du lien. sur FireFox en tout cas

Commentaire de jojolapine le 20/10/2006 13:10:26

Bonjour et merci pour ce code!
j'aurai juste une question, je souhaite activer un menu lorsque je suis au dessus d'un div et le désactiver lorsque j'en sort...
j'ai donc fait un onmouseover pour l'activer, ça fonctionne, mais je ne sais pas comment "killer" le menu contextuel sur un onmouseout...?
j'ai bien vu qu'il y avait une fonction close dans le .js, mais j'arrive pas à faire marcher ...
merci d'avance!

Commentaire de rubiks10 le 20/10/2006 18:14:44

Bonjour à tous.

Donc à la suite de plusieurs demandes à ce sujet j'ai donc mis à jour la source afin que de vous donner un exemple pour afficher un menu différent sur des divs...

Notez bien les différences comme par exemple le RETURN dans les fonctions de création de menu afin d'obtenir l'objet menu ( utile que pour afficher un menu différent sur des divs )

Et regardez la source de l'exemple pour comprendre comment faire ... ( car c'est un peu bizarre je l'avoue mais c'était le seul moyen de faire sans tout remanipuler ma classe )

Voila bonne prog a tous et n'hésitez pas si vous avez des problèmes

--The Rubik's Man--

Commentaire de geus91 le 06/11/2006 14:00:49

Ne fonctionne pas avec une doctype strict 1.0 :'(
Comment faire?

Commentaire de arnolem le 06/11/2006 14:55:44

merci beaucoup.

Si vous voulez mettre un peu de transparence dans votre ombre, il suffit de rajouter :

'opacity: 0.5;'+ 'filter:Alpha(opacity=50);'+ '-moz-opacity : 0.5;'+

Dans le fichier JS dans les propriétés de this.shadow_style.

Vous pouvez faire de même pour le this.menu_style si vous voulez un menu transparent.
a+

Commentaire de geus91 le 07/11/2006 01:09:03

Lors d'une déclaration de doctype XHTML x.x
Il faut modifier la librairie.
Les lignes qui décrivent les styles du menu ont des valeurs sans unités.
document.getElementById("menu_contextuel_div").style.top = this.mouse_y;
il faut rajouter >>> +'px';

Ex:
document.getElementById("menu_contextuel_div").style.top = this.mouse_y+'px';

Commentaire de toutphp le 20/11/2006 09:51:57

Chapeau pour cette source, et chapeau aussi au programmeur que tu es qui fait une documentation pour toutes ses sources !! 9/10

Commentaire de rubiks10 le 20/11/2006 11:54:09

Quelle déclaration.... lol

Vraiment merci a vous ca fait plaisir de voir que mes sources intéressent du monde!!!

Commentaire de OB1_12 le 07/12/2006 14:09:43

Salut tous le monde ....

Je trouve que ce menu contextuel est vraiment bien fait, il marche avec tous les navigateurs et "doctype"... c'est nickel...

J'ai voulu du coup l'utiliser sur mon site en voulant le changer un peu pour mon application mais j'avoue que j'y arrive pas ;-(
Du coup je me suis dis que tu pourrais peut être me donner un coup de main.
Je m'explique : J'ai besoin d'un menu global utilisé sur toute les pages de mon site (pour l'instant c'est pas dure).
Sauf que j'aimerai intégré une option supplémentaire suivant l'endroit où la souris se trouve sans passer par x fonctions javascript initialisant à chaque fois un nouveau menu ... (car il y en aurait trop)
Je sais pas si j'ai bien posé le problème et si il y a une solution ...

Merci d'avance en tous cas ... A+

Commentaire de rubiks10 le 08/12/2006 09:47:47

Salut.

Non je suis désolé mais ce que tu demandes est impossible avec ma librairie de menu contextuel et je suis quasiment certain que c'est impossible avec toutes les librairies de menu contextuel que tu trouveras sur le net.
Je n'ai pas dit que c'est impossible mais pour faire ca il faudrait créer une librairie spécifique à ton utilisation. Et c'est vrai que ce n'est pas une très bonne solution de creer un nouveau menu sur des éléments lorsque ceci sont nombreux.
Mais cette utilisation étant peu utilisée je n'ai pas décidé de l'implémenter. Peut-être que dans un futur proche je programmerai une nouvelle librairie plus souple...

Voilà merci pour tes commentaires
@+

Commentaire de OB1_12 le 08/12/2006 11:28:10

Salut rubiks,
Bah tant pis pour moi ;-)
Je l'ai fait sinon avec mon application d'origine mais il ne marche pas avec mon doctype alors je suis un peu coincé ...
Merci en tout cas d'avoir répondu aussi vite ....
A+

Commentaire de rubiks10 le 08/12/2006 12:02:08

A oui ?? quel doctype as-tu ??

Commentaire de OB1_12 le 08/12/2006 19:56:18

j'ai celui la : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

En fait, je me suis mis toute l'aprem sur le code est en utilisant une partie de ton javascript, j'ai réussi à supprimer le bug que j'avais avec le doctype... Le problème venait lorsque je calculais les coordonnées de ma souris...

Merci quand même en tout cas ... ;-)
++

Commentaire de OB1_12 le 13/12/2006 11:24:44

Juste pour dire que j'ai mis mon source de mon menu contextuel. C'est moins bien codé que celui de Rubiks mais il y a des fonctionnalité en plus pour ceux que ca interesse ou pour donner des idées à certains ...
http://www.javascriptfr.com/code.aspx?ID=40666
A+

Commentaire de christianmusique le 04/04/2007 17:57:26

Bonjour,
Ton code de gestion de menu contextuel m'intéresse beaucoup et je te remercie de l'avoir publié sur le web. Je voudrais l'intégrer dans une application de planning écrite en php4/5. Mon problème est le suivant:
Avec la souris, l'utilisateur se positionne sur une ligne qui a été dessinée sur l'écran et qui identifie à la fois un jour de la semaine et un profil.
Lorsque l'utilisateur fait un clic droit, un menu contextuel apparait qui liste les personnes disponibles.
Lorsque l'utilisateur fait un clic gauche sur la personne choisie, on déclenche un prog php en lui passant en paramètre a position en y de la souris, et l'identifiant de la personne choisie.
Il y a 2 choses que je parviens pas à faire avec ton code, sans doute parce que j'ai mal compris l'interaction entre javascript et php et peut être aussi parce que je ne vois pas comment générer des textes, images et actions menu dynamiquement. Comment faire pour:
1. Récupérer depuis php les identifiants et noms des personnes disponibles, pour afficher le nom de personne dans le menu contextuel,
2. Lors du clic gauche, déclencher un prog php en lui passant la position y de la souris et l'identifiant de la personne.
Pourrais-tu me mettre sur une bonne piste ?
ChristianMusique

Commentaire de deboutv le 03/12/2007 19:20:48

Un truc qui peut-être sympa c'est de mettre des titres (détectables par l'absence d'action) : http://dl.free.fr/mkCj6uT4F/context-menu.png

Commentaire de CyberDenix le 24/12/2007 13:47:21

Marche pas sous Opera.

Commentaire de seb37 le 28/05/2008 16:30:03 1/10

dommage qu'on doit etre dans les div pour avoir le clic droit...

Commentaire de nodelhome le 02/03/2009 08:06:49 9/10

Bonjour,
Ce script est vraiment très bien ficelé !!
cependant je rencontre un petit soucis, quand je quitte l'élément sur lequel j'ai fait un clic droit, le menu ne disparait pas, en connaissez-vous la raison ?

Petite info pour Seb37, il est tout à fait possible d'utiliser ce script avec pratiquement n'importe quel élément html.
Il est aussi possible de le rendre dynamùique en lui envoyant en paramètre ce qu'on veut afficher dans le menu.
Perso, je l'ao utiliser sur des <tr> et les données affichées dans le menu étaient modifiées dynamiquement en fonction de données d'une DB

Encore un grand merci pour ce script vraiment très bon

Commentaire de Morphinof le 09/04/2009 16:11:32 9/10

Alors la chapeau :) Je cherche et je tombe sur cette source et j'adopte ! ;) Vraiment je suis bluffe par la simplicité et sa marche bien sous firefox, dommage que ce soit pas compatible avec certains navigateurs mais bon c'est déjà excellent :)
A mon avis sa vaut bien ses 9/10, si je met pas 10 c'est pour la compatibilité mais niveau intégration c'est vraiment parfait;) Seb37 je ne comprends pas le 1/10 c'est vraiment vache comme note... Merci pour ce script !

Commentaire de azraeht le 13/08/2009 11:58:08

Salut!

Vraiment super comme source! J'essai de l'utiliser dans une appli ASP.NET/C# mais je rencontre un problème tout bête:
-En faite, pour chaque <td> d'un tableau (en ajoutant: td.Attributes.Add("oncontextmenu", "menu = menuFreeCells();menu.mousePositionCapture(event);menu.open();");)
Jusque là tout va bien, ma fonction menuFreeCells() me renvoi bien le menu qui est créé.
Ce que je n'arrive pas c'est à transmettre l'id de mon <TD> au menu...

Est-ce que tu aurais une solution a me proposer?

Commentaire de DaD92 le 09/01/2010 16:06:52

Salut, super cette librairie.

Il marche impec.
Par contre, je n'arrive pas à faire passer mess variables.
Je m'explique.
je me nu contextuel est lancé par :
oncontextmenu="menu = menu_intro('intro', 1);menu.mousePositionCapture(event);menu.open();" onMouseOut="document.oncontextmenu = function(){menu.close();

les variable intro et 1 que je passe avec la fonction menu_intro('intro', 1) se nomme nom_champ et num_champ.

ensuite dans le menu contextuel, voilà une des partie du menu :

{

   'ItemName': 'Ajouter une mesure',
   'Action': 'add_champ(\''+nom_champ+'\', '+num_champ+')',
   'Image': null

}
quand je regarde le débogue, je m'apperçois que la variable nom_champ et num_champ ne sonnt pas passer à l'appel de la fonction add_champ().

Peux tu m'aider?

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Imprimer un document avec JavaScript [ par hor878 ] Bonjour,Je ne connais presque rien en JavaScript. Voici mon probl&#232;me :J'ai une liste de documents (Word, Excel ...) avec un menu contextuel en Ja gros problème menu dynamique [ par lilyvirus ] Bonjour, j'ai un gros problèeme. Je ne suis pas très doué en javascript (je prefère 100* le flash) et la je suis en stage, ma seconde partie de stage ASPX javascript menu problème [ par rabbiwan ] Bonjourje fais un site en ASPX c# et on m'a indiqué de mettre en menu en javacriptalors j'ai trouvé un super menu peut etre vous connaissez je l'ai vu Menu vertical [ par jaco13 ] Bonjour tout le monde Je suis toujours &#224; la recherche de trucs tr&#232;s pratiques r&#233;alis&#2 Menu contextuel vairable. [ par VooDooS ] Bonsoir, Toujour pour mon chat, il faudrait que je fasse un menu contextuel diff&#233;rent suivant l'endoirt (le texte) sur lequel est plac&#233; le c Aidez-moi s'il vous plait [ par pandzobo ] Bonjour,J'ai t&#233;l&#233;charg&#233; ici le script que j'ai utilis&#233; dans le fichier DHTML inclus ci-apr&#232;s pour un menu d&#233;roulant. Mai Menu contextuel fermant et ouvrant [ par monia76 ] Bonjour,Je cherche le code source d'un menu contextuel l&#224; o&#249; il ya un sous lenu qui s'ouvre et se fere selon le choix du lienmerci d'avance Un menu parcourir comme Windows [ par Atorina ] Bonjour,J'aimerai faire un menu fenetre qui permettrai de parcourir les repertoire et fichier d'un utilisateur (en intranet). Cela me permettai de réc question javascript [ par yvonD ] Bonjour,Je viens de tester le code ci-dessous contenu ds un fichier menu.jsfunction new_window() {xyz="open('index.html', 'new', 'width=300,height=150 Linux et javascript [ par Androus ] Bonjour à tous,Juste une petite question qui me trotte dans la tête.Est-ce que le javascript est réservé à windows et internet explorer? Je viens de t


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,764 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales