Cette semaine, nous continuons à explorer les fonctionnalités du plugin Widgets. Nous avions vu la création d’onglets la semaine dernière. Dans cet article, nous allons découvrir les gestionnaires de visibilité et les info-bulles.
Les gestionnaires de visibilité
Ce que j’appelle ici un gestionnaire de visibilité est simplement le code javascript nécessaire à ajouter pour cacher ou montrer un élément du DOM d’une page web donnée.
On rencontre souvent cette fonctionnalité lorsqu’on affiche un liste d’éléments et qu’on désire afficher/cacher les éléments de cette liste.
Widgets permet de créer extrêmement rapidement un bloc de détails que l’utilisateur peut afficher ou cacher.
Après avoir installé le plugin comme décrit dans le précédent article, il suffit d’ajouter ces quelques lignes de code:
<% for element in @list %>
<div class="element">
<%= h element.info %>
<%= show_detail_for element %>
<% detail_for element do %>
Plus de détails...
<%= h element.detailed_info %>
<%= hide_detail_for element %>
<% end %>
</div>
<% end %>
N’oubliez pas d’inclure les javascripts par défaut et particulièrement la librairie prototype dans votre vue.
<%= javascript_include_tag :defaults %>
Profitez du résultat.
Les info-bulles
Avec Widgets, il devient aussi aisé de créer des info-bulles.
<% tooltip "info" do %>
<h3>Titre de mon info-bulle</h3>
Contenu...
<% end %>
A la place de la chaine de caractère, vous pouvez, bien entendu, passer une image grâce à image_tag.
Si vous préférez rapatrier le contenu de l’info-bulle à la volée grâce à AJAX, c’est aussi possible.
<%
tooltip do |t|
t.named image_tag('info') || 'info'
t.link_to_remote :action => 'show_tooltip'
end
%>
Et voilà de quoi simplifier encore un peu plus vos vues. Qu’en pensez-vous? Nous verrons encore deux fonctionnalités de ce plugin la semaine prochaine.
Ressources : Présentation de Rails Widgets par son créateur : Paolo Dona
0 Commentaires