# j-Info

> j-Info : singleton ; show: SETTER('info', 'show', options)

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: fr
Content-SHA256: 5dbda7835b718296a76a723fa2dbc7d46badf8ee78f29e8ffe652dc0fa91c78f
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

- singleton
- afficher : `SETTER('info', 'show', options)`
- cacher : `SETTER('info', 'hide')`

__Afficher les options__ :

- `opt.element` {jQuery} un élément où sera affiché `j-Info`
- `opt.align` {String} aligner `left` (par défaut), `center`, `right` ou `half`
- `opt.html` {String} un contenu HTML
- `opt.name` {String} un nom du modèle Tangular, doit être défini dans le corps `j-Info` comme dans l'exemple ci-dessous
- `opt.value` {Object} un modèle pour le modèle Tangular
- `opt.minwidth` {Number} une largeur minimale (par défaut : `100`)
- `opt.maxwidth` {Number} une largeur maximale (par défaut : `280`)
- `opt.offsetX` {Numéro} Décalage `x` (par défaut : `0`)
- `opt.offsetY` {Numéro} Décalage `y` (par défaut : `0`)
- `opt.offsetWidth` {Numéro} Décalage `width` (par défaut : `0`)
- `opt.callback` {Fonction(isvisible)} un rappel est exécuté lorsque l'élément est masqué
- `opt.class` {String} un nom de classe personnalisé
- `opt.closeclick` {Boolean} ferme les informations lorsque l'utilisateur effectue un clic de souris (par défaut : `false`)
- __NEW__ `opt.position` {String} position `top` (par défaut) ou `bottom`
- __NOUVEAU__ `opt.x` {Number} permet la position absolue (`opt.y` n'est pas requis)
- __NEW__ `opt.y` {Number} permet la position absolue (`opt.x` n'est pas requis)

```javascript
var opt = {};
opt.element = YOUR_ELEMENT;
opt.html = 'TEST';
SETTER('info', 'show', opt);
```

__ou avec les modèles Tangular :__

```html
<ui-component name="info">

	<script type="text/html" name="template1">
		{{ value.name }}
	</script>

	<script type="text/html" name="template2">
		<h2>{{ value.firstname }} {{ value.lastname }}</h2>
	</script>

	<script type="text/html" name="template3">
		{{ value.description }}
	</script>

</ui-component>

<script>
function some_caller() {
	var opt = {};
	opt.element = YOUR_ELEMENT;
	opt.name = 'template1';
	opt.value = { name: 'Peter' };
	SETTER('info', 'show', opt);
}
</script>
```

Utilisez-le avec `<ui-component name="info">`. 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.

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

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

<br />
<div class="container">
	<a href="javascript:void(0)">Mouse hover here</a>
</div>

<script>
	$(document).on('mouseenter mouseleave', 'a', function(e) {
		if (e.type === 'mouseenter') {
			var opt = {};
			opt.element = this;
			opt.html = 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptate nobis omnis quae commodi recusandae dolore saepe blanditiis, eligendi accusamus optio!';
			SETTER('info', 'show', opt);
		} else
			SETTER('info', 'hide');
	});
</script>
```
