# j-ContextMenu

> Ако стойността не е определена, тогава компонентът използва името като стойност.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: bg
Content-SHA256: 3f4638c839d4717a3c63c10b2404e79def1c9269d1eef9319f894f84a65fc5a7
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

- Поддържа 3 ориентации `left`, `center` и `right`
- Синглът
- Работи с Bootstrap
- Работи с допир


__Методи__:

Методът: `component.show(orientation, targetElement, [items], clickCallback, [offsetX], [offsetY])`
- `orientation {String}` може да бъде `left`, `center` или `right`
- `targetElement {Selector/jQuery/Element}` е цел, където компонентът ще бъде видим
- `items {Array}` е факултативен и трябва да има тази структура: В противен случай `[{ name: String, value: String, icon: String }]` ще бъде прочетена от атрибута на целевия `data-options`.
- `callback(selectedValue) {Function}` се освобождава, когато потребителят кликне върху елемента
- `offsetX {Number}` може да промени опцията X
- `offsetY {Number}` опция може да промени offset Y

Методът: `component.hide()`

__Атрибути__:
`targetElement` може да съдържа атрибут на `data-options="Name 1|fa-building|Value 1;Name 2|fa-github|Value 2;"` с всички елементи в контекстния меню.

Ако `value` не е дефиниран, тогава компонентът използва `name` като `value`.

__Глобални събития__:

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

Използвайте го с `<ui-component name="contextmenu">`Когато компонентът все още не е зареден, jComponent Изтегляне на първия адрес в `DEF.fallback` (След това Componentator Източник: Питър Шерка Componentator Съставни съставки, лиценз на MIT.

```html 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>
```
