Comment ajouter une barre latérale dans Mozilla/Firefox

Notre outil interne de gestion de bogues utilise des cadres (frames pour les anglophones). Le premier permet de faire une sélection sur les bogues à afficher, le deuxième affiche une liste ou le bogue sélectionné. Ce n'est plus trop au goût du jour mais je n'ai pas trop de temps pour faire évoluer ça. Néanmoins, ça me gênait beaucoup. Par exemple, l'icône RSS affichée par Firefox n'apparaît que dans le cas d'une page ne faisant pas partie d'un groupe de cadres. En visitant bugzilla.mozilla.org, j'ai remarqué la gestion de la barre latérale (sidebar). J'ai regardé un peu le fichier source de cette page. En fait, c'est assez simple. La barre latérale n'est qu'une page HTML comme les autres. Il est d'ailleurs possible d'indiquer à Firefix lors de la création d'un marque-page que celui-ci doit être affiché dans la barre latérale. Pour une installation automatique, un simple script javascript suffit :

function addPanel() { 
  if  { 
   window.sidebar.addPanel ("Ma barre latérale", 
         "http://linuxfr.org",
         ""); 
  } else { 
    var rv = window.confirm ("Cette page dispose de plus de fonctionnalités avec Netscape/Mozilla/Firefox." 
     + "Voulez-vous installer un de ces logiciels maintenant ?"); 
     if (rv) document.location.href = "http://www.mozilla.org/";
 }

}

Simple, non ? Du coup, j'ai ajouté le code javascript dans une page et, en exécutant ce script, j'ajoute un marque-page contenant l'URL du cadre gauche et s'ouvrant dans la barre latérale. Ainsi, après une sélection, mes listes s'affichent dans une page sans cadre et mon lien RSS s'affiche bien en bas de page.

Un petit lien pour des explications plus détaillées : My Sidebar Developer's Guide. Notez surtout que la cible de vos liens doit être _content pour éviter d'ouvrir une nouvelle fenêtre.

Ajouter un commentaire

Les commentaires peuvent être formatés en utilisant une syntaxe wiki simplifiée.

Fil des commentaires de ce billet