j-Suggestion
- unterstützt 3 Ausrichtungen
left,centerundright - Singleton
- Funktioniert mit dem Bootstrap Grid System
- arbeitet mit Berührungen
- unterstützt den Dark-Modus
Methoden:
Methode: component.show(orientation, targetElement, [items/function(search, next)], clickCallback)
orientation {String}kannleft,centeroderrightseintargetElement {Selector/jQuery/Element}ein Ziel, an dem die Komponente sichtbar sein wirditems {Array}optional und muss diese Struktur haben:[{ name: String, value: String, icon: String }], andernfalls werden Elemente aus demdata-options-Attribut des Ziels gelesen.callback(selectedItem) {Function}wird ausgelöst, wenn der Benutzer auf das Element klickt
Methode: component.hide()
Attribute:
targetElementkann das Attributdata-options="Name 1|ti-building|Value 1;Name 2|ti-github|Value 2;"mit allen Elementen des Kontextmenüs enthalten.
Konfiguration:
placeholder– ein Platzhalter für die Sucheingabe
Serverseitige Suche:
SETTER('suggestion', 'show', element, function(search, next) {
next([{ name: 'Item 1' }, { name: 'Item 2' }]);
}, function(selected) {
console.log(selected);
});Wenn value nicht definiert ist, verwendet die Komponente name als value.
Globale Ereignisse:
ON('suggestion', function(visible, component, target) {
console.log('Suggestion is', visible ? 'visible' : 'hidden');
});Verwenden Sie es mit <ui-component name="suggestion">. Wenn die Komponente noch nicht geladen ist, lädt jComponent sie bei der ersten Verwendung von der Adresse in DEF.fallback herunter (standardmäßig das CDN Componentator). Autor: Peter Širka. Quelle: Componentator-Komponenten-Repository, MIT-Lizenz.
<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>