Compare commits
6 Commits
01dc3bf739
...
1.1.1
| Author | SHA1 | Date | |
|---|---|---|---|
| 7cb8d50e7d | |||
| 91746b2c47 | |||
| 08864af580 | |||
| 4512c40a97 | |||
| 1cd690ef60 | |||
| b14e9a9d7f |
375
DOCUMENTATION.md
375
DOCUMENTATION.md
@@ -2,42 +2,62 @@
|
||||
|
||||
### Table of Contents
|
||||
|
||||
- [Constructor][1]
|
||||
- [Parameters][2]
|
||||
- [Examples][3]
|
||||
- [each][4]
|
||||
- [Parameters][5]
|
||||
- [addClass][6]
|
||||
- [Parameters][7]
|
||||
- [removeClass][8]
|
||||
- [Parameters][9]
|
||||
- [replaceClass][10]
|
||||
- [Parameters][11]
|
||||
- [setAttr][12]
|
||||
- [Parameters][13]
|
||||
- [delAttr][14]
|
||||
- [Parameters][15]
|
||||
- [setHidden][16]
|
||||
- [setReadOnly][17]
|
||||
- [setDisabled][18]
|
||||
- [delHidden][19]
|
||||
- [delReadOnly][20]
|
||||
- [delDisabled][21]
|
||||
- [toggleHidden][22]
|
||||
- [toggleReadOnly][23]
|
||||
- [toggleDisabled][24]
|
||||
- [on][25]
|
||||
- [Parameters][26]
|
||||
- [onClick][27]
|
||||
- [Parameters][28]
|
||||
- [found][29]
|
||||
- [first][30]
|
||||
- [last][31]
|
||||
- [gsd][32]
|
||||
- [Parameters][33]
|
||||
- [version][34]
|
||||
- [gsd][35]
|
||||
- [version][36]
|
||||
* [Constructor][1]
|
||||
* [Parameters][2]
|
||||
* [Examples][3]
|
||||
* [each][4]
|
||||
* [Parameters][5]
|
||||
* [Examples][6]
|
||||
* [addClass][7]
|
||||
* [Parameters][8]
|
||||
* [Examples][9]
|
||||
* [removeClass][10]
|
||||
* [Parameters][11]
|
||||
* [Examples][12]
|
||||
* [replaceClass][13]
|
||||
* [Parameters][14]
|
||||
* [Examples][15]
|
||||
* [setAttr][16]
|
||||
* [Parameters][17]
|
||||
* [Examples][18]
|
||||
* [delAttr][19]
|
||||
* [Parameters][20]
|
||||
* [Examples][21]
|
||||
* [setHidden][22]
|
||||
* [Examples][23]
|
||||
* [setReadOnly][24]
|
||||
* [Examples][25]
|
||||
* [setDisabled][26]
|
||||
* [Examples][27]
|
||||
* [delHidden][28]
|
||||
* [Examples][29]
|
||||
* [delReadOnly][30]
|
||||
* [Examples][31]
|
||||
* [delDisabled][32]
|
||||
* [Examples][33]
|
||||
* [toggleHidden][34]
|
||||
* [Examples][35]
|
||||
* [toggleReadOnly][36]
|
||||
* [Examples][37]
|
||||
* [toggleDisabled][38]
|
||||
* [Examples][39]
|
||||
* [on][40]
|
||||
* [Parameters][41]
|
||||
* [Examples][42]
|
||||
* [onClick][43]
|
||||
* [Parameters][44]
|
||||
* [Examples][45]
|
||||
* [found][46]
|
||||
* [Examples][47]
|
||||
* [first][48]
|
||||
* [Examples][49]
|
||||
* [last][50]
|
||||
* [Examples][51]
|
||||
* [gsd][52]
|
||||
* [Parameters][53]
|
||||
* [version][54]
|
||||
* [gsd][55]
|
||||
* [version][56]
|
||||
|
||||
## Constructor
|
||||
|
||||
@@ -45,13 +65,14 @@ Création du constructeur
|
||||
|
||||
### Parameters
|
||||
|
||||
- `selector` **[String][37]** Sélecteur utilisé
|
||||
- `scope` **[HTMLElement][38]** Racine de la recherche
|
||||
* `selector` **[String][57]** Sélecteur utilisé
|
||||
* `scope` **[HTMLElement][58]** Racine de la recherche
|
||||
|
||||
### Examples
|
||||
|
||||
```javascript
|
||||
let element = $_("a.link", "div#main");
|
||||
# Tous les `a` class `link` contenu dans un `div` id `main`
|
||||
$_("a.link", "div#main");
|
||||
```
|
||||
|
||||
### each
|
||||
@@ -60,7 +81,15 @@ Application d'une fonction sur chacun des éléments
|
||||
|
||||
#### Parameters
|
||||
|
||||
- `callback` **[Function][39]** La fonction de rappel
|
||||
* `callback` **[Function][59]** La fonction de rappel
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_(".class").each((item, index) => {
|
||||
// Do something with item et index
|
||||
});
|
||||
```
|
||||
|
||||
### addClass
|
||||
|
||||
@@ -68,17 +97,29 @@ Ajout d'une classe aux éléments sélectionnés
|
||||
|
||||
#### Parameters
|
||||
|
||||
- `className` **[String][37]** Le nom de la classe à ajouter
|
||||
* `className` **[String][57]** Le nom de la classe à ajouter
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("p","div#main").addClass("myClass");
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### removeClass
|
||||
|
||||
Ajout d'une classe aux éléments sélectionnés
|
||||
Suppression d'une classe aux éléments sélectionnés
|
||||
|
||||
#### Parameters
|
||||
|
||||
- `className` **[String][37]** Le nom de la classe à ajouter
|
||||
* `className` **[String][57]** Le nom de la classe à ajouter
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("p","div#main").removeClass("myClass");
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
@@ -88,8 +129,14 @@ Remplace une classe par une autre dans les éléments sélectionnés
|
||||
|
||||
#### Parameters
|
||||
|
||||
- `oldClass` **[String][37]** Nom de la classe à remplacer
|
||||
- `newClass` **[String][37]** Nom de la classe de remplacement
|
||||
* `oldClass` **[String][57]** Nom de la classe à remplacer
|
||||
* `newClass` **[String][57]** Nom de la classe de remplacement
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("p","div#main").replaceClass("myOldClass", "myNewClass");
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
@@ -99,8 +146,14 @@ Définit un attribut et sa valeur
|
||||
|
||||
#### Parameters
|
||||
|
||||
- `attr` **[String][37]** Nom de l'attribut
|
||||
- `value` **[String][37]** Valeur de l'attribut
|
||||
* `attr` **[String][57]** Nom de l'attribut
|
||||
* `value` **[String][57]** Valeur de l'attribut
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("input.class").setAttr("readonly", "");
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
@@ -110,7 +163,13 @@ Supprime un attribut dans les éléments sélectionnés
|
||||
|
||||
#### Parameters
|
||||
|
||||
- `attr` **[String][37]** Nom de l'attribut à supprimer
|
||||
* `attr` **[String][57]** Nom de l'attribut à supprimer
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_(input.class).delAttr("readonly");
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
@@ -118,54 +177,108 @@ Returns **this** Chainage
|
||||
|
||||
Ajoute l'attribut hidden aux éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("span.class").setHidden();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### setReadOnly
|
||||
|
||||
Ajoute l'attribut readonly aux éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("input.class").setReadOnly();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### setDisabled
|
||||
|
||||
Ajoute l'attribut disabled aux éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("input.class").setDisabled();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### delHidden
|
||||
|
||||
Supprime l'attribut hidden aux éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("span.class").delHidden();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### delReadOnly
|
||||
|
||||
Supprime l'attribut readonly aux éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("input.class").delReadOnly();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### delDisabled
|
||||
|
||||
Supprime l'attribut disabled aux éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("input.class").delDisabled();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### toggleHidden
|
||||
|
||||
switche l'attribut hidden des éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("span.class").toggleHidden();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### toggleReadOnly
|
||||
|
||||
switche l'attribut readonly des éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("input.class").toggleReadOnly();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### toggleDisabled
|
||||
|
||||
switche l'attribut disabled des éléments sélectionnés
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("input.class").toggleDisabled();
|
||||
```
|
||||
|
||||
Returns **this** Chainage
|
||||
|
||||
### on
|
||||
@@ -174,9 +287,17 @@ Ajout d'un gestionnaire d'événement aux éléments sélectionnés
|
||||
|
||||
#### Parameters
|
||||
|
||||
- `type` **[String][37]** Nom de l'événement
|
||||
- `callback` **[Function][39]** Gestionnaire de l'événement
|
||||
- `useCapture` **[Boolean][40]** Propagation de l'événement
|
||||
* `type` **[String][57]** Nom de l'événement
|
||||
* `callback` **[Function][59]** Gestionnaire de l'événement
|
||||
* `useCapture` **[Boolean][60]** Propagation de l'événement
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("button#event").on("mouseover", (evt, el) => {
|
||||
// Do something with evt and el
|
||||
}, false);
|
||||
```
|
||||
|
||||
### onClick
|
||||
|
||||
@@ -184,26 +305,52 @@ Ajout d'un gestionnaire d'événement 'click' pour les éléments sélectionnés
|
||||
|
||||
#### Parameters
|
||||
|
||||
- `callback` **[Function][39]** Gestionnaire de l'événement
|
||||
- `useCapture` **[Boolean][40]** Propagation de l'événement
|
||||
* `callback` **[Function][59]** Gestionnaire de l'événement
|
||||
* `useCapture` **[Boolean][60]** Propagation de l'événement
|
||||
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
$_("button#event").onClick( (evt, el) => {
|
||||
// Do something with evt and el
|
||||
}, false);
|
||||
```
|
||||
|
||||
### found
|
||||
|
||||
Retourne si un élément a été trouvé
|
||||
|
||||
Returns **[Boolean][40]** l'élément du DOM trouvé
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
let found = $_("#main").found();
|
||||
```
|
||||
|
||||
Returns **[Boolean][60]** `true` si un élément au moins du DOM trouvé. `false` sinon
|
||||
|
||||
### first
|
||||
|
||||
Retourne le premier élément trouvé
|
||||
|
||||
Returns **[HTMLElement][38]** l'élément du DOM trouvé
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
let htmlElement = $_("p.paragraphe").first();
|
||||
```
|
||||
|
||||
Returns **[HTMLElement][58]** l'élément du DOM trouvé
|
||||
|
||||
### last
|
||||
|
||||
Retourne le dernier élément trouvé
|
||||
|
||||
Returns **[HTMLElement][38]** L'élément du DOM trouvé
|
||||
#### Examples
|
||||
|
||||
```javascript
|
||||
let htmlElement = $_("p.paragraphe").last();
|
||||
```
|
||||
|
||||
Returns **[HTMLElement][58]** L'élément du DOM trouvé
|
||||
|
||||
## gsd
|
||||
|
||||
@@ -211,9 +358,9 @@ Instantiation d'un nouveau constructeur
|
||||
|
||||
### Parameters
|
||||
|
||||
- `selector` **[String][37]** Sélecteur utilisé
|
||||
- `root`
|
||||
- `scope` **[HTMLElement][38]** Racine de la recherche
|
||||
* `selector` **[String][57]** Sélecteur utilisé
|
||||
* `root`
|
||||
* `scope` **[HTMLElement][58]** Racine de la recherche
|
||||
|
||||
### version
|
||||
|
||||
@@ -237,72 +384,112 @@ Version de la librairie
|
||||
|
||||
[5]: #parameters-1
|
||||
|
||||
[6]: #addclass
|
||||
[6]: #examples-1
|
||||
|
||||
[7]: #parameters-2
|
||||
[7]: #addclass
|
||||
|
||||
[8]: #removeclass
|
||||
[8]: #parameters-2
|
||||
|
||||
[9]: #parameters-3
|
||||
[9]: #examples-2
|
||||
|
||||
[10]: #replaceclass
|
||||
[10]: #removeclass
|
||||
|
||||
[11]: #parameters-4
|
||||
[11]: #parameters-3
|
||||
|
||||
[12]: #setattr
|
||||
[12]: #examples-3
|
||||
|
||||
[13]: #parameters-5
|
||||
[13]: #replaceclass
|
||||
|
||||
[14]: #delattr
|
||||
[14]: #parameters-4
|
||||
|
||||
[15]: #parameters-6
|
||||
[15]: #examples-4
|
||||
|
||||
[16]: #sethidden
|
||||
[16]: #setattr
|
||||
|
||||
[17]: #setreadonly
|
||||
[17]: #parameters-5
|
||||
|
||||
[18]: #setdisabled
|
||||
[18]: #examples-5
|
||||
|
||||
[19]: #delhidden
|
||||
[19]: #delattr
|
||||
|
||||
[20]: #delreadonly
|
||||
[20]: #parameters-6
|
||||
|
||||
[21]: #deldisabled
|
||||
[21]: #examples-6
|
||||
|
||||
[22]: #togglehidden
|
||||
[22]: #sethidden
|
||||
|
||||
[23]: #togglereadonly
|
||||
[23]: #examples-7
|
||||
|
||||
[24]: #toggledisabled
|
||||
[24]: #setreadonly
|
||||
|
||||
[25]: #on
|
||||
[25]: #examples-8
|
||||
|
||||
[26]: #parameters-7
|
||||
[26]: #setdisabled
|
||||
|
||||
[27]: #onclick
|
||||
[27]: #examples-9
|
||||
|
||||
[28]: #parameters-8
|
||||
[28]: #delhidden
|
||||
|
||||
[29]: #found
|
||||
[29]: #examples-10
|
||||
|
||||
[30]: #first
|
||||
[30]: #delreadonly
|
||||
|
||||
[31]: #last
|
||||
[31]: #examples-11
|
||||
|
||||
[32]: #gsd
|
||||
[32]: #deldisabled
|
||||
|
||||
[33]: #parameters-9
|
||||
[33]: #examples-12
|
||||
|
||||
[34]: #version
|
||||
[34]: #togglehidden
|
||||
|
||||
[35]: #gsd-1
|
||||
[35]: #examples-13
|
||||
|
||||
[36]: #version-1
|
||||
[36]: #togglereadonly
|
||||
|
||||
[37]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String
|
||||
[37]: #examples-14
|
||||
|
||||
[38]: https://developer.mozilla.org/docs/Web/HTML/Element
|
||||
[38]: #toggledisabled
|
||||
|
||||
[39]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function
|
||||
[39]: #examples-15
|
||||
|
||||
[40]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean
|
||||
[40]: #on
|
||||
|
||||
[41]: #parameters-7
|
||||
|
||||
[42]: #examples-16
|
||||
|
||||
[43]: #onclick
|
||||
|
||||
[44]: #parameters-8
|
||||
|
||||
[45]: #examples-17
|
||||
|
||||
[46]: #found
|
||||
|
||||
[47]: #examples-18
|
||||
|
||||
[48]: #first
|
||||
|
||||
[49]: #examples-19
|
||||
|
||||
[50]: #last
|
||||
|
||||
[51]: #examples-20
|
||||
|
||||
[52]: #gsd
|
||||
|
||||
[53]: #parameters-9
|
||||
|
||||
[54]: #version
|
||||
|
||||
[55]: #gsd-1
|
||||
|
||||
[56]: #version-1
|
||||
|
||||
[57]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String
|
||||
|
||||
[58]: https://developer.mozilla.org/docs/Web/HTML/Element
|
||||
|
||||
[59]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function
|
||||
|
||||
[60]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean
|
||||
|
||||
20
README.md
20
README.md
@@ -1,6 +1,26 @@
|
||||
GSDom - Bibliothèque Javascript
|
||||
===============================
|
||||
|
||||
GSDom est une petite bibliothèque javascript permettant d'effectuer des manipulations de base sur le DOM d'une page HTML.
|
||||
|
||||
- Elle est compatible Emac2005 (ES6) et ne nécessite aucune bibliothèque externe.
|
||||
- Elle permet de se passer de bibliothèques lourdes telles que jQuery pour les manipulations basiques
|
||||
|
||||
Installation
|
||||
------------
|
||||
|
||||
Pour utiliser GSDom, il suffit de copier le fichier dist/gsdom.min.js dans l'arborescence de son projet et de l'intégrer dans sa page web de manière classique
|
||||
```html
|
||||
<script src="js/gsdom.min.js">
|
||||
```
|
||||
GSDom exporte le symbole `$_` pour toute manipulation du DOM
|
||||
```html
|
||||
<script>
|
||||
// Sélectionne tous les a du document et ajoute la classe myClass
|
||||
$_("a").addClass("myClass");
|
||||
</script>
|
||||
```
|
||||
|
||||
Documentation
|
||||
-------------
|
||||
La [documentation](DOCUMENTATION.md) est générée automatiquement par le script de build
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
terser --ecma=2015 --comments /^!/ --compress --mangle --output dist/gsdom.min.js -- src/gsdom.js
|
||||
terser --ecma=2015 --comments /^!/ --compress --mangle --output dist/gsdom.min.js -- src/gsdom.js
|
||||
documentation build src/GSDom.js -f md > DOCUMENTATION.md
|
||||
|
||||
2
dist/gsdom.min.js
vendored
2
dist/gsdom.min.js
vendored
@@ -1 +1 @@
|
||||
window.$_=(()=>{"use strict";let t=function(t,e){if(t)if("document"===t)this.elems=[document];else if("window"===t)this.elems=[window];else{let i=e||document;this.elems=i.querySelectorAll(t)}};t.prototype.each=function(t){if(t&&"function"==typeof t)return this.elems.forEach((e,i)=>{t(e,i)}),this},t.prototype.addClass=function(t){return this.each(e=>{e.classList.add(t)}),this},t.prototype.removeClass=function(t){return this.each(e=>{e.classList.remove(t)}),this},t.prototype.replaceClass=function(t,e){return this.each(i=>{i.classList.replace(t,e)}),this},t.prototype.setAttr=function(t,e){return this.each(i=>{i.setAttribute(t,e)}),this},t.prototype.delAttr=function(t){return this.each(e=>{e.removeAttribute(t)}),this},t.prototype.setHidden=function(){return this.setAttr("hidden",""),this},t.prototype.setReadOnly=function(){return this.setAttr("readonly",""),this},t.prototype.setDisabled=function(){return this.setAttr("disabled",""),this},t.prototype.delHidden=function(){return this.delAttr("hidden"),this},t.prototype.delReadOnly=function(){return this.delAttr("readonly"),this},t.prototype.delDisabled=function(){return this.delAttr("disabled"),this},t.prototype.toggleHidden=function(){return this.each(t=>{t.hasAttribute("hidden")?t.removeAttribute("hidden"):t.setAttribute("hidden","")}),this},t.prototype.toggleReadOnly=function(){return this.each(t=>{t.hasAttribute("readonly")?t.removeAttribute("readonly"):t.setAttribute("readonly","")}),this},t.prototype.toggleDisabled=function(){return this.each(t=>{t.hasAttribute("disabled")?t.removeAttribute("disabled"):t.setAttribute("disabled","")}),this},t.prototype.on=function(t,e,i){return this.each(r=>{r.removeEventListener(t,e,i||!1),r.addEventListener(t,(t,i)=>{e(t,i)},i||!1)}),this},t.prototype.onClick=function(t,e){return this.on("click",t,e||!1),this},t.prototype.found=function(){return this.elems.length>0},t.prototype.first=function(){return!!this.found()&&this.elems[0]},t.prototype.last=function(){return!!this.found()&&this.elems[this.elems.length-1]};let e=(e,i)=>new t(e,i);return e.version="GSD 1.1.0 by Séb",e})();
|
||||
window.$_=(()=>{"use strict";let t=function(t,e){if(t)if("document"===t)this.elems=[document];else if("window"===t)this.elems=[window];else{let i=e||document;this.elems=i.querySelectorAll(t)}};t.prototype.each=function(t){if(t&&"function"==typeof t)return this.elems.forEach(((e,i)=>{t(e,i)})),this},t.prototype.addClass=function(t){return this.each((e=>{e.classList.add(t)})),this},t.prototype.removeClass=function(t){return this.each((e=>{e.classList.remove(t)})),this},t.prototype.replaceClass=function(t,e){return this.each((i=>{i.classList.replace(t,e)})),this},t.prototype.setAttr=function(t,e){return this.each((i=>{i.setAttribute(t,e)})),this},t.prototype.delAttr=function(t){return this.each((e=>{e.removeAttribute(t)})),this},t.prototype.setHidden=function(){return this.setAttr("hidden",""),this},t.prototype.setReadOnly=function(){return this.setAttr("readonly",""),this},t.prototype.setDisabled=function(){return this.setAttr("disabled",""),this},t.prototype.delHidden=function(){return this.delAttr("hidden"),this},t.prototype.delReadOnly=function(){return this.delAttr("readonly"),this},t.prototype.delDisabled=function(){return this.delAttr("disabled"),this},t.prototype.toggleHidden=function(){return this.each((t=>{t.hasAttribute("hidden")?t.removeAttribute("hidden"):t.setAttribute("hidden","")})),this},t.prototype.toggleReadOnly=function(){return this.each((t=>{t.hasAttribute("readonly")?t.removeAttribute("readonly"):t.setAttribute("readonly","")})),this},t.prototype.toggleDisabled=function(){return this.each((t=>{t.hasAttribute("disabled")?t.removeAttribute("disabled"):t.setAttribute("disabled","")})),this},t.prototype.on=function(t,e,i){return this.each((r=>{r.removeEventListener(t,e,i||!1),r.addEventListener(t,((t,i)=>{e(t,i)}),i||!1)})),this},t.prototype.onClick=function(t,e){return this.on("click",t,e||!1),this},t.prototype.found=function(){return this.elems.length>0},t.prototype.first=function(){return!!this.found()&&this.elems[0]},t.prototype.last=function(){return!!this.found()&&this.elems[this.elems.length-1]};let e=(e,i)=>new t(e,i);return e.version="GSD 1.1.1 by Séb",e})();
|
||||
97
src/gsdom.js
97
src/gsdom.js
@@ -4,7 +4,8 @@ window.$_ = (() => {
|
||||
* Création du constructeur
|
||||
*
|
||||
* @example
|
||||
* let element = $_("a.link", "div#main");
|
||||
* # Tous les `a` class `link` contenu dans un `div` id `main`
|
||||
* $_("a.link", "div#main");
|
||||
*
|
||||
* @param {String} selector Sélecteur utilisé
|
||||
* @param {HTMLElement} scope Racine de la recherche
|
||||
@@ -24,6 +25,12 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Application d'une fonction sur chacun des éléments
|
||||
*
|
||||
* @example
|
||||
* $_(".class").each((item, index) => {
|
||||
* // Do something with item et index
|
||||
* });
|
||||
*
|
||||
* @param {Function} callback La fonction de rappel
|
||||
*/
|
||||
Constructor.prototype.each = function (callback) {
|
||||
@@ -37,6 +44,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Ajout d'une classe aux éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("p","div#main").addClass("myClass");
|
||||
*
|
||||
* @param {String} className Le nom de la classe à ajouter
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
@@ -47,7 +58,11 @@ window.$_ = (() => {
|
||||
return this;
|
||||
};
|
||||
/**
|
||||
* Ajout d'une classe aux éléments sélectionnés
|
||||
* Suppression d'une classe aux éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("p","div#main").removeClass("myClass");
|
||||
*
|
||||
* @param {String} className Le nom de la classe à ajouter
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
@@ -59,6 +74,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Remplace une classe par une autre dans les éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("p","div#main").replaceClass("myOldClass", "myNewClass");
|
||||
*
|
||||
* @param {String} oldClass Nom de la classe à remplacer
|
||||
* @param {String} newClass Nom de la classe de remplacement
|
||||
* @returns {this} Chainage
|
||||
@@ -71,6 +90,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Définit un attribut et sa valeur
|
||||
*
|
||||
* @example
|
||||
* $_("input.class").setAttr("readonly", "");
|
||||
*
|
||||
* @param {String} attr Nom de l'attribut
|
||||
* @param {String} value Valeur de l'attribut
|
||||
* @returns {this} Chainage
|
||||
@@ -83,6 +106,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Supprime un attribut dans les éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_(input.class).delAttr("readonly");
|
||||
*
|
||||
* @param {String} attr Nom de l'attribut à supprimer
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
@@ -94,6 +121,9 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Ajoute l'attribut hidden aux éléments sélectionnés
|
||||
*
|
||||
* @example $_("span.class").setHidden();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.setHidden = function () {
|
||||
@@ -102,6 +132,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Ajoute l'attribut readonly aux éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("input.class").setReadOnly();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.setReadOnly = function () {
|
||||
@@ -110,6 +144,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Ajoute l'attribut disabled aux éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("input.class").setDisabled();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.setDisabled = function () {
|
||||
@@ -118,6 +156,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Supprime l'attribut hidden aux éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("span.class").delHidden();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.delHidden = function () {
|
||||
@@ -126,6 +168,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Supprime l'attribut readonly aux éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("input.class").delReadOnly();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.delReadOnly = function () {
|
||||
@@ -134,6 +180,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Supprime l'attribut disabled aux éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("input.class").delDisabled();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.delDisabled = function () {
|
||||
@@ -142,6 +192,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* switche l'attribut hidden des éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("span.class").toggleHidden();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.toggleHidden = function () {
|
||||
@@ -156,6 +210,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* switche l'attribut readonly des éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("input.class").toggleReadOnly();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.toggleReadOnly = function () {
|
||||
@@ -170,6 +228,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* switche l'attribut disabled des éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("input.class").toggleDisabled();
|
||||
*
|
||||
* @returns {this} Chainage
|
||||
*/
|
||||
Constructor.prototype.toggleDisabled = function () {
|
||||
@@ -184,6 +246,12 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Ajout d'un gestionnaire d'événement aux éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("button#event").on("mouseover", (evt, el) => {
|
||||
* // Do something with evt and el
|
||||
* }, false);
|
||||
*
|
||||
* @param {String} type Nom de l'événement
|
||||
* @param {Function} callback Gestionnaire de l'événement
|
||||
* @param {Boolean} useCapture Propagation de l'événement
|
||||
@@ -199,6 +267,12 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Ajout d'un gestionnaire d'événement 'click' pour les éléments sélectionnés
|
||||
*
|
||||
* @example
|
||||
* $_("button#event").onClick( (evt, el) => {
|
||||
* // Do something with evt and el
|
||||
* }, false);
|
||||
*
|
||||
* @param {Function} callback Gestionnaire de l'événement
|
||||
* @param {Boolean} useCapture Propagation de l'événement
|
||||
*/
|
||||
@@ -208,13 +282,21 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Retourne si un élément a été trouvé
|
||||
* @returns {Boolean} l'élément du DOM trouvé
|
||||
*
|
||||
* @example
|
||||
* let found = $_("#main").found();
|
||||
*
|
||||
* @returns {Boolean} `true` si un élément au moins du DOM trouvé. `false` sinon
|
||||
*/
|
||||
Constructor.prototype.found = function () {
|
||||
return this.elems.length > 0;
|
||||
};
|
||||
/**
|
||||
* Retourne le premier élément trouvé
|
||||
*
|
||||
* @example
|
||||
* let htmlElement = $_("p.paragraphe").first();
|
||||
*
|
||||
* @returns {HTMLElement} l'élément du DOM trouvé
|
||||
*/
|
||||
Constructor.prototype.first = function () {
|
||||
@@ -222,6 +304,10 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Retourne le dernier élément trouvé
|
||||
*
|
||||
* @example
|
||||
* let htmlElement = $_("p.paragraphe").last();
|
||||
*
|
||||
* @returns {HTMLElement} L'élément du DOM trouvé
|
||||
*/
|
||||
Constructor.prototype.last = function () {
|
||||
@@ -229,6 +315,9 @@ window.$_ = (() => {
|
||||
};
|
||||
/**
|
||||
* Instantiation d'un nouveau constructeur
|
||||
*
|
||||
* @internal
|
||||
*
|
||||
* @param {String} selector Sélecteur utilisé
|
||||
* @param {HTMLElement} scope Racine de la recherche
|
||||
*/
|
||||
@@ -238,7 +327,7 @@ window.$_ = (() => {
|
||||
/**
|
||||
* Version de la librairie
|
||||
*/
|
||||
gsd.version = 'GSD 1.1.0 by Séb';
|
||||
gsd.version = 'GSD 1.1.1 by Séb';
|
||||
/**
|
||||
* @return Retour de la librairie
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user