Bloquer le target="_blank" dans Firefox 1.0

Si vous lisez ce blog, vous savez sûrement qu'il est très mal d'utiliser les attributs target="_blank". Cet attribut a l'inconvénient de dérouter même les utilisateurs les plus habitués, alors vous comprendrez aisément à quel point il est catastrophique pour un utilisateur néophyte.

Cependant, Firefox intégrait depuis longtemps en interne un système pour empêcher les liens en target="_blank" de s'ouvrir dans une nouvelle fenêtre. Il existait depuis quelques versions déjà une préférence accessible via about:config qui permettait d'annuler ce comportement. Cette préférence s'appelait browser.block.target_new_window.

Cette préférence a disparu dans Firefox 1.0. Les développeurs ont maintenant ajouté un système expérimental plus puissant et disponible directement dans les options de Firefox. Pour activer ces options, il faut modifier la préférence browser.tabs.showSingleWindowModePrefs et la mettre à true. Vous pouvez alors réouvrir vos options dans la section « Avancé » et vous trouverez ces nouvelles options dans la partie « Navigation par onglets ».

Capture d'écran des nouvelles options dans la partie « Navigation par onglets » sous les options « Ouvrir les liens provenant d'autres applications dans : »

Donc messieurs les développeurs web, vous n'avez plus aucune raison de mettre cet attribut puisque tous les utilisateurs de Firefox auront bientôt activé ce blocage :-)

PS: Il semblerait que cette option fasse un peu plus de chose que la version précédente puisqu'elle n'intercepte pas seulement les liens en target="_blank" mais aussi les popups ouvertes par un window.open. Déroutant la première fois, mais cela ne semble pas ennuyer mon Dotclear.

ÉDITION

Finalement, cette nouvelle fonctionnalité ne me plait pas, et il semblerait que je ne sois pas le seul.

Cependant, grâce aux valeureux guerroyers de MozillaZine, j'ai découvert l'existence d'une seconde préférence : browser.link.open_newwindow.restriction. Celle-ci doit être un moyen de paramétrer le nouveau système de fenêtre unique et possède une valeur par défaut de 0.

Si vous modifiez cette valeur à 1, vous retrouverez l'ancien comportement de browser.block.target_new_window qui ne bloquait que les attributs target et pas les scripts d'ouverture de fenêtre.

2006-05-31

Depuis Firefox 1.5, l'option est disponible de base et le comportement est correct. Une capture d'écran pour les gens qui ne retrouverait pas l'option :

Haut de page