2010-07-11 2 views
2

Je sais que tout le monde déteste que les menus contextuels soient mal utilisés, alors ce que je demande est le contraire. J'ai essayé de chercher des plugins javascript qui traitent de la modification des menus contextuels dans les pages Web, mais je trouve qu'ils sont très intrusifs. (c'est-à-dire que le menu contextuel ne contient plus que les éléments que le développeur choisit). Est-il possible d'ajouter simplement un élément au menu contextuel, tout en conservant les éléments normaux de l'utilisateur tout en conservant le style natif du menu? Les mêmes plugins que j'ai trouvés nécessitent que le développeur définisse un nouveau style pour les menus. Je ne vois pas l'intérêt de réinventer la roue.Garder le style natif d'un menu contextuel dans les pages Web

Je demande parce que un de mes clients veut ajouter des fonctionnalités supplémentaires au site lorsque l'utilisateur clique droit.

Répondre

1
  • Le menu contextuel ne peut pas être modifié via javascript normal + DOM. Il (généralement) peut être supprimé et remplacé par un HTML dynamique qui ressemble et agit comme un menu contextuel. C'est pourquoi le style semble différent, et pourquoi vous ne pouvez pas combiner les menus contextuels intégrés et personnalisés ... les 'menus contextuels' faits en javascript ne sont pas du tout des menus contextuels.

  • Le menu contextuel peut être désactivé si l'événement est annulé, mais cela dépend du navigateur - la plupart des navigateurs offrent une option pour interdire le masquage du menu contextuel; Si cela est activé, même si l'événement est annulé, le menu s'affichera. Il en résulte deux "menus contextuels" affichant, le menu contextuel réel et le javascript falsifié.

  • aux pages Web de style basé sur l'apparence du système de l'utilisateur, utilisez les couleurs système définies dans CSS2 (http://www.iangraham.org/books/xhtml1/appd/update-23feb2000.html) et/ou la propriété d'apparence CSS3 (http://www.w3.org/TR/2004/CR-css3-ui-20040511/#system)

Edit: En réponse à "a client of mine wants to add extra functionality to the site when the user right clicks" - - vous pouvez conseiller au client de ne le faire que si le site est une application Web (par exemple, google docs) où les utilisateurs peuvent raisonnablement s'attendre à ce que le menu contextuel fasse quelque chose hors de l'ordinaire. Vous devez également vous assurer qu'il existe une manière non cachée de faire tout ce qui peut être fait via le menu contextuel.