ForgeKomponenty
sk

Komponenty

j-Suggestion

jComponent 20 · jcomponent@20 component Príklad načítaný s jComponent 20
  • podporuje 3 orientácie left, center a right
  • singleton
  • pracuje s Bootstrap Grid System
  • pracuje s dotykmi
  • podporuje tmavý režim

Metódy:

Metóda: component.show(orientation, targetElement, [items/function(search, next)], clickCallback)

  • orientation {String} môže byť left, center alebo right
  • targetElement {Selector/jQuery/Element} cieľ, kde bude komponent viditeľný
  • items {Array} voliteľné a musí mať túto štruktúru: [{ name: String, value: String, icon: String }] inak budú položky načítané z atribútu data-options cieľa.
  • callback(selectedItem) {Function} sa spustí, keď používateľ klikne na položku

Metóda: component.hide()

Atribúty:

  • targetElement môže obsahovať atribút data-options="Name 1|ti-building|Value 1;Name 2|ti-github|Value 2;" so všetkými položkami kontextového menu.

Konfigurácia:

  • placeholder - zástupný znak pre vstup vyhľadávania

Vyhľadávanie na strane servera:

SETTER('suggestion', 'show', element, function(search, next) {
	next([{ name: 'Item 1' }, { name: 'Item 2' }]);
}, function(selected) {
	console.log(selected);
});

Ak value nie je definované, komponent použije name ako value.

Globálne udalosti:

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

Použite ho so <ui-component name="suggestion">. Keď komponent ešte nie je načítaný, jComponent ho stiahne pri prvom použití z adresy v DEF.fallback (predvolene CDN Componentator). Autor: Peter Širka. Zdroj: úložisko komponentov Componentator, licencia MIT.

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

<ui-component name="suggestion" config="placeholder:Search ..."></ui-component>

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

<script>
	$(document).on('click', 'a', function() {
		SETTER('suggestion/show', 'left', this, [{ name: 'Total.js' }, { name: 'Express.js' }, { name: 'Meteor.js' }, { name: 'Koa.js' }, { name: 'ASP.NET' }, { name: 'PHP' }, { name: 'Python' }, { name: 'Node.js' }], function(value) {
			console.log('CLICK', value);
		});
	});
</script>