Avec le niveau de sécurité de plus en plus accrût, soit par des “popup blocker” intégré dans FireFox et Internet Explorer 7 ou par des barres d’outils supplémentaires, l’utilisation des popup est de plus en plus difficile pour le développeur web.

La philosophie

Les popup bloqueurs sont là pour nous éviter les fenêtres que nous ne désirons pas et principalement celle que nous ne pouvons pas annulées. Ainsi, si on appel un popup sur l’événement “onload” du body ou sur le “mouse out” d’une image le popup bloqueur sera alerté. En général, les événements qui ne peuvent être annulés par l’utilisateur ou qui ne sont pas activés par lui de façon explicite sont bloqués.

Les événements proscrits sont :

  • body onload
  • image on mouse over, mouse out
  • onunload

Aussi le popup bloqueur empêche les événements suivants :

  • setHomePage() s’il n’est pas généré par l’utilisateur
  • Les script qui désirent automatisé les recherches du “search pane”

Un bonne pratique !

Sachant cela une bonne pratique est de récupérer la valeur de retour de la fonction window.open pour validée si elle est NULL

function popUp()
{
var nouvelleFenetre;
nouvelleFenetre = window.open(...,...,...);
if( nouvelleFenetre == NULL )
{
alert("Vous avez un bloqueur de fenêtre. S'il vous plaît déactivé le pour ce site");
}
}

Certes les “popup bloqueurs ” sont une fonctionnalité intéressant, mais il semble que les constructeurs de publicité innovent avec du flash qui vol et qui parfois même rendent le site inutilisable par des zones transparentes par-dessus les contrôles.

À suivre…

Référence: