Définir une option: <options> et <option> |
Lorsqu'on active ou désactive une option (par un lien hypertexte, par exemple) et que cette option n'existe pas, celle-ci est automatiquement créée. Il est également possible de créer des options au moment du chargement de la page, grâce à un élément <options> qui contient un ou plusieurs éléments <option>. Chaque élément <option> permet de créer une option dans un état initial: activé ou désactivé. Cet état initial peut être choisi en fonction des informations fournies par l'Intranet de l'ULB. L'élément <options>, lui, permet de regrouper plusieurs options afin de leur faire adopter un comportement commun. Par exemple, faire en sorte qu'une seule de ces options puisse être active à la fois (l'activation de l'une, désactive automatiquement les autres). Dans cet exemple, l'attribut état permet de définir l'état initial de chaque option (au moment où la page est chargée dans le navigateur). Comme l'élément <options> est placé dans un élément <page>, ces options ne seront créées que dans la page en question. Mais on peut également les créer pour toutes les pages d'un document, ou toutes les pages d'un projet. Exemple <page> <info>...</info> <options> <option id="personnel" état="activé"/> <option id="etudiant" état="désactivé"/> <option id="exterieur" état="désactivé"/> </options> ... </page> Dans cet autre exemple, qui est une variante de l'exemple précédent, une seule des trois options personnel, étudiant et exterieur ne pourra être active à la fois, grâce à l'attribut mode="exclusif" (d'autres modes de fonctionnement sont possibles). De plus, on a ajouté une quatrième option, choix, qui sera activée tant qu'aucune des trois autres n'est active, grâce à l'attribut état="ou-inverse". Il s'agit d'une option particulière qui sert à refléter l'état des autres options du groupe, et ce de différentes manières (état="ou", état="ou-inverse", état="et" et état="et-inverse"). Exemple <page> <info>...</info> <options mode="exclusif"> <option id="personnel" état="désactivé"/> <option id="etudiant" état="désactivé"/> <option id="exterieur" état="désactivé"/> <option id="choix" état="ou-inverse"/> </options> ... </page> |
Où placer l'élément <options> ?
Définir l'état (activé/désactivé) d'une optionPar défaut, sans attribut état, une option définie par un élément <option> est créée en étant désactivée. Lors de l'affichage de la page elle ne sera pas active tant qu'un élément extérieur (un lien hypertexte cliqué par l'utilisateur, par exemple) ne la fasse changer d'état. L'attribut état permet de modifier cet état par défaut, notamment au moment du chargement de la page. Activer/désactiver une option au moment du chargement de la pageL'attribut état="activé" ou état="désactivé" donne l'état initial de l'option, au moment du chargement de la page dans le navigateur (on peut également utiliser un sous-élément <activée> ou <désactivée> à placer dans l'élément <option>). |
Exemple <page> <options> <option id="E1" état="activé"/> <option id="E2" état="désactivé"/> <option id="E3"> <activée/> </option> </options> ... </page> |
Activer/désactiver une option via un lien hypertexteL'utilisateur peut lui-même modifier l'état d'une option à l'aide d'un lien hypertexte définit avec un attribut cible="activer:xxxx", cible="désactiver:xxxx" ou cible="inverser:xxxx". Activer/désactiver une option via un formulaireL'utilisateur peut également modifier l'état d'une option dans un formulaire, à l'aide d'une liste déroulante, d'un bouton radio ou d'un ensemble de cases à cocher. Activer/désactiver une option en fonction des autres options d'un groupeL'attribut état d'un élément <option> permet (s'il vaut "ou", "ou-inverse", "et" et "et-inverse") d'activer/désactiver l'option en fonction de l'état des autres options d'un groupe <options>. Activer/désactiver une option via l'Intranet de l'ULBUn élément <option>, s'il contient des sous-éléments (<connexion/>, <hors-connexion/>, <utilisateur/>, <catégorie/>...), permet d'activer/désactiver l'option en fonction des informations reçues par l'Intranet de l'ULB. Comportement commun des options: l'attribut modeL'attribut mode placé sur l'élément <options> permet de définir un comportement commun aux options que cet élément contient. On distingue les modes suivants:
Attention: ce comportement commun ne s'applique qu'aux options dont l'attribut état n'existe pas ou est égal à "activé" ou "désactivé". Si des options possèdent l'attribut état égal à "ou", "ou-inverse", "et" et "et-inverse", ces options ne participent pas au comportement commun. Elles ont pour rôle de refléter l'état des autres options du groupe. Ce mode n'est appliqué que lorsqu'une des options mentionnées change d'état (via un lien hypertexte, par exemple). Il n'est pas appliqué lors du chargement initial de la page, ce qui vous laisse toute liberté pour choisir l'état initial des options (via l'attribut état). Options mutuellement exclusives |
Si l'attribut mode est égal à "exclusif", les options auront un comportement exclusif. Cela veut dire qu'une seule des options ne pourra jamais être active à un moment donné (vous en activez une, les autres se désactivent automatiquement). Ce mode n'exclut pas la possiiblité que toutes les options soient inactives en même temps (contrairement à mode="unique"). Dans cet exemple, trois options A1, A2 et A3 sont déclarées au début de la page. L'option A1 est initialement activée. Le contenu du bloc contient trois <section> controlées par les trois options. Les trois liens présentés vous permettent d'inverser les trois options. Remarquez que si vous inversez l'option qui est active, plus aucune option ne sera active et le bloc sera vide. Exemple <page> <options mode="exclusif"> <option id="A1" état="activé"/> <option id="A2"/> <option id="A3"/> </options> ... </page> |
Options mutuellement exclusives et une seule toujours active |
Si l'attribut mode est égal à "unique", les options auront un comportement exclusif, mais une d'entre-elle devra toujours être active. Le fonctionnement est le même que le mode exclusif, sauf que si vous désactivez l'option qui est active, l'option suivante sera automatiquement activée. Dans cet exemple, trois options B1, B2 et B3 sont déclarées au début de la page. L'option B1 est initialement activée. Le contenu du bloc contient trois <section> controlées par les trois options. Les trois liens présentés vous permettent d'inverser les trois options. Exemple <page> <options mode="unique"> <option id="B1" état="activé"/> <option id="B2"/> <option id="B3"/> </options> ... </page> |
Options mutuellement inversées |
Si l'attribut mode est égal à "inverse", les options auront un comportement inverse. Cela veut dire que si vous changez l'état d'un option, les autres se mettront dans l'état inverse (vous en activez une, les autres se désactivent automatiquement; vous en désactivez une, les autres s'activent automatiquement). Dans cet exemple, deux options C1 et C2 sont déclarées au début de la page. L'option C1 est initialement activée. Des <section> sont utilisées pour afficher l'état de chaque option. Les deux liens vous permettent d'inverser chacune des options. Exemple <page> <options mode="inverse"> <option id="C1" état="activé"/> <option id="C2"/> </options> ... </page> |
Options simultanées |
Si l'attribut mode est égal à "simultané", les options auront un comportement simultané. Cela veut dire que si vous changez l'état d'un option, les autres se mettront automatiquement dans le même état. Dans cet exemple, deux options D1 et D2 sont déclarées au début de la page. Des <section> sont utilisées pour afficher l'état de chaque option. Les deux liens vous permettent d'inverser chacune des options. Exemple <page> <options mode="simultané"> <option id="D1"/> <option id="D2"/> </options> ... </page> |