ForgeComposants
fr

Composants

j-ContextMenu

jComponent 20 · jcomponent@20 component Exemple chargé avec jComponent 20
  • prend en charge 3 orientations left, center et right
  • singleton
  • fonctionne avec le système Bootstrap Grid
  • fonctionne avec des touches

Méthodes :

Méthode : component.show(orientation, targetElement, [items], clickCallback, [offsetX], [offsetY])

  • orientation {String} peut être left, center ou right
  • targetElement {Selector/jQuery/Element} une cible où le composant sera visible
  • items {Array} facultatif et doit avoir cette structure : [{ name: String, value: String, icon: String }] sinon ce seront des éléments lus à partir de l'attribut data-options de la cible.
  • callback(selectedValue) {Function} est déclenché lorsque l'utilisateur clique sur l'élément
  • offsetX {Number} en option peut modifier le décalage X
  • offsetY {Number} en option peut modifier le décalage Y

Méthode : component.hide()

Attributs :

targetElement peut contenir l'attribut data-options="Name 1|fa-building|Value 1;Name 2|fa-github|Value 2;" avec tous les éléments du menu contextuel.

Si le value n'est pas défini, le composant utilise name comme value.

Événements mondiaux :

ON('contextmenu', function(visible, component, target) {
    console.log('ContextMenu is', visible ? 'visible' : 'hidden');
});

Utilisez-le avec <ui-component name="contextmenu">. Lorsque le composant n'est pas encore chargé, jComponent le télécharge lors de la première utilisation depuis l'adresse dans DEF.fallback (le CDN Componentator par défaut). Auteur : Peter Širka. Source : le référentiel de composants Componentator, licence MIT.

example.html
<style>
	body { background-color: #F0F0F0; }
</style>

<ui-component name="contextmenu"></ui-component>

<div class="container">
	<a href="javascript:void(0)">Edit</a>
</div>

<script>
	$(document).on('click', 'a', function() {
		SETTER('contextmenu/show', 'left', this, [{ name: 'Print', icon: 'ti-print', value: 'print' }, { name: 'Copy', icon: 'ti-copy', value: 'copy' }, { name: 'Remove', icon: 'ti-times-circle', value: 'remove' }], function(item) {
			console.log('CLICK', item);
		});
	});
</script>