ForgeComponentes
es

Componentes

j-ContextMenu

jComponent 20 · jcomponent@20 component Ejemplo cargado con jComponent 20
  • admite 3 orientaciones left, center y right
  • singleton
  • funciona con el sistema Bootstrap Grid
  • funciona con toques

Métodos:

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

  • orientation {String} puede ser left, center o right
  • targetElement {Selector/jQuery/Element} un objetivo donde el componente será visible
  • items {Array} es opcional y debe tener esta estructura: [{ name: String, value: String, icon: String }], de lo contrario, los elementos se leerán desde el atributo data-options del objetivo.
  • callback(selectedValue) {Function} se activa cuando el usuario hace clic en el elemento
  • offsetX {Number} opcional puede cambiar el desplazamiento X
  • offsetY {Number} opcional puede cambiar el desplazamiento Y

Método: component.hide()

Atributos:

targetElement puede contener el atributo data-options="Name 1|fa-building|Value 1;Name 2|fa-github|Value 2;" con todos los elementos del menú contextual.

Si value no está definido, entonces el componente usa name como value.

Eventos globales:

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

Úselo con <ui-component name="contextmenu">. Cuando el componente aún no está cargado, jComponent lo descarga en el primer uso desde la dirección en DEF.fallback (el CDN Componentator de forma predeterminada). Autor: Peter Širka. Fuente: repositorio de componentes Componentator, licencia 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>