Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

MENU CONTEXTUEL PERSONNALISABLE POUR CLIC DROIT


Information sur la source

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é: 16 205 / 2 976

Note :
7 / 10 - par 7 personnes
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (31)
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

Pour les "Membres Club", vous pouvez 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... )

Commentaires et avis

signaler à un administrateur
Commentaire de rubiks10 le 29/09/2006 23:04:25

A vos commentaires merci !!!
Bonne prog a tous

-- The Rubik's Man --

signaler à un administrateur
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

signaler à un administrateur
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--

signaler à un administrateur
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)

signaler à un administrateur
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

signaler à un administrateur
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--

signaler à un administrateur
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

signaler à un administrateur
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 ;))

signaler à un administrateur
Commentaire de Azema le 06/10/2006 20:51:09

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

signaler à un administrateur
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 ?

signaler à un administrateur
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--

signaler à un administrateur
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.

signaler à un administrateur
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 --

signaler à un administrateur
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

signaler à un administrateur
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!

signaler à un administrateur
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--

signaler à un administrateur
Commentaire de geus91 le 06/11/2006 14:00:49

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

signaler à un administrateur
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+

signaler à un administrateur
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';

signaler à un administrateur
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

signaler à un administrateur
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!!!

signaler à un administrateur
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+

signaler à un administrateur
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
@+

signaler à un administrateur
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+

signaler à un administrateur
Commentaire de rubiks10 le 08/12/2006 12:02:08

A oui ?? quel doctype as-tu ??

signaler à un administrateur
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 ... ;-)
++

signaler à un administrateur
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+

signaler à un administrateur
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

signaler à un administrateur
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

signaler à un administrateur
Commentaire de CyberDenix le 24/12/2007 13:47:21

Marche pas sous Opera.

signaler à un administrateur
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...

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

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,078 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.