Pour autant que je sache, il n'y a pas d'exposition API publique de la page d'accueil/du moteur de recherche par défaut d'un navigateur. Alors, comment Google sait-il afficher cela? Cela ne survient que lorsque Google n'est pas la page d'accueil par défaut/le moteur de recherche par défaut de mon navigateur.
Je peux seulement supposer qu'ils déduisent de nombreuses variables, telles que le référent. Je n'ai pas réussi à creuser dans le code JavaScript compilé de Google. Je ne sais même pas s'il est détecté côté client ou côté serveur.
Je suis sur Firefox 44, mais j'ai également vu ces bannières sur Chrome.
Il y a simplement aucun moyen pour le faire avec JavaScript car la "recherche par défaut/page d'accueil" est la préférence d'un utilisateur et vous n'y avez pas accès sans autorisation de l'utilisateur parce que cela être un problème de sécurité/confidentialité.
Ce que fait Google à chaque visite de l'utilisateur, une annonce promotionnelle avec une icône de fermeture et un bouton OK s'affiche avec des instructions sur la façon de la définir comme page d'accueil par défaut. Au clic de l'un d'entre eux, il crée 2 cookies afin que la prochaine fois il vérifie vos cookies et fasse disparaître les promos. Même lorsque Google est votre page d'accueil et que vous supprimez vos cookies, une bannière est toujours là pour promouvoir Google comme page d'accueil.
J'ai vérifié cela avec Firefox, pas au courant de Chrome.
Je ne sais pas exactement ce que fait Google, mais ce que je ferais:
Referer
: visitedHelpAboutHomePage
lorsque l'utilisateur visite la page "oui, montrez-moi" (peut empêcher les faux négatifs, mais peut également générer des faux positifs)Notez que le "paramètre spécial" se produit dans le scénario "recherche lancée par la boîte de recherche": il existe un paramètre sourceid
qui signifie probablement "source de recherche".
Dans mon Firefox (v42), le message "Venez souvent ici?" s'affiche même lorsque Google est défini comme moteur de recherche par défaut.
Dans Safari, je reçois une boîte au même endroit qui dit "Une meilleure façon de naviguer sur le Web: Obtenez Google Chrome"
Dans Opera et Chrome je ne reçois aucune boîte du tout, même si je change mon fournisseur de recherche par défaut pour autre chose que Google.
Donc, je crois que tout ce qu'ils font, c'est la détection du navigateur dans le JavaScript, en utilisant l'objet UserAgent.