Aides DOM : ATTRD, HIDDEN, VISIBLE, WIDTH, STYLE, NODEMOVE, DIFFDOM et APPEARANCE
ATTRD(element or event, [name])litdata-name(par défautdata-id) d'un élément, d'un objet jQuery ou de l'élément d'un événement ; pour un objet simple il lit la propriété.HIDDEN(element)vauttruequand l'élément n'est pas affiché (lui ou un parent est endisplay: none; un élément enfant direct du body est toujours signalé comme non caché, la vérification commence par son parent) ;VISIBLE(element, [threshold], [mode])vauttruequand il est dans la partie visible de la fenêtre (mode'above'ou'below'demande où il se trouve quand il ne l'est pas).NOTFOCUSED()vauttruequand l'onglet du navigateur est en arrière-plan etinDOM(element)est vrai tant que l'élément est dans le document.WIDTH([element])renvoie la classe de taille de la largeur de l'élément (par défaut : la fenêtre) :'xs','sm','md'ou'lg'(les limites sont dansDEF.devices).WWetWHsont la taille de la fenêtre ;$West l'objet jQuery de la fenêtre ;SCROLLBARWIDTH()est la largeur qu'occupe une barre de défilement.SCROLLBAR(element, [options])enveloppe un élément avec une barre de défilement personnalisée et le renvoie ;scrollbar.resize()la recalcule après un changement du contenu.isTOUCH,isMOBILE,isROBOT,isSTANDALONE,isPRIVATEMODEetisIEsont des booléens sur le navigateur, définis au démarrage de la page.STYLE(css, [id], [selector])ajoute unstyleau head. Avec unid, le style est remplacé quand vous l'appelez de nouveau avec le même id ; avec unselector, chaque règle en est enveloppée ('.a { }'devient'#p .a{ }').NODEINDEXOF(element)est la position de l'élément parmi ses frères,NODEINSERT(element, reference, [before])déplace un élément après (ou avant) un autre etNODEMOVE(element, [up])le déplace d'une place vers le bas (ou le haut).DIFFDOM(parent, selector, html, [attribute])rend les enfants deparentqui correspondent àselectoridentiques à ceux dehtml, sans redessiner ceux qui sont déjà là : un élément est le même quand sonattributea la même valeur (sansattribute, quand tout son HTML est identique). Il supprime ceux qui ne sont pas dans la nouvelle liste, ajoute les nouveaux et les met dans l'ordre dehtml, et renvoie{ add, upd, rem }. Le contenu d'un élément conservé n'est pas remplacé.APPEARANCE({ color, dark, large, <name>: value })règle l'apparence de la page :darketlargebasculent les classesui-darketui-largedu body,coloret chaque autre clé deviennent des variables CSS de:root(--color, et--rgbest calculé à partir de la couleur) dans un unique<style id="cssappearance">.ENVIRONMENT(name, version, language, [env])définit le nom qui préfixe les clés danslocalStorage, la version et la langue (DEF.localstorage,DEF.version,DEF.language) et, avecenv, plusieurs valeursENV().
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>jComponent</title>
<link rel="stylesheet" href="//cdn.componentator.com/spa.min@20.css" />
<script src="//cdn.componentator.com/spa.min@20.js"></script>
</head>
<body>
<p id="p">A paragraph</p>
<div id="shown" style="width:300px;height:40px">Shown</div>
<div id="hidden" style="display:none"><span id="inside">Inside</span></div>
<div id="far" style="margin-top:3000px">Far away</div>
<div id="box" style="width:200px;height:50px;overflow:auto"><div style="height:300px">tall</div></div>
<ul id="list"><li id="a" data-id="a">a</li><li id="b" data-id="b">b</li><li id="c" data-id="c">c</li></ul>
<ul id="diff"><li data-id="1">one</li><li data-id="2">two</li></ul>
</body>
</html> Essayez-le dans votre navigateur
Modifiez l'exemple et exécutez-le. Il s'exécute dans un cadre isolé de votre navigateur ; rien n'est envoyé à notre serveur.
Aperçu