2010-01-19 6 views
8

Comment vérifier si l'utilisateur a désactivé javascript dans son navigateur? Par exemple: le site stackoverflow affiche un avertissement rouge en haut si vous désactivez le javascript dans firefox? Comment y parvenir? Une autre chose que j'ai remarquée: si vous désactivez les cookies, stackoverflow ne fonctionne pas. Il ne vous permettra pas de vous connecter lorsque vous cliquez sur le bouton de connexion. En fait, c'est ce que je suppose aussi avec mon site web, les données de connexion/session de l'utilisateur dépendent des cookies, de la disposition de l'interface utilisateur, etc. dépend de javascript.Comment vérifier si javascript est désactivé?

Ici, je ne veux pas discuter sur le principe de conception (amélioration progressive etc.), quelqu'un pourrait-il me dire un bon moyen de vérifier si les cookies, javascript sont activés ou non? Je pense que cela doit être fait sur le serveur, non?

Merci

Répondre

18

Ajouter un tag <noscript> à la page, et si JavaScript est désactivé, le message montrera à l'utilisateur.

Vous pouvez également détecter si JavaScript est activé en fonction du succès de l'exécution du code JavaScript

  • ajouter un champ caché et définissez sa valeur par défaut à false
  • Exécuter du code javascript qui définit la valeur à true
  • Lorsque vous publiez, vérifiez la valeur.

Pour vérifier les cookies, définissez un cookie et essayez de le lire. S'il réussit, les cookies sont activés.

+0

pour être plus précis, utilisez

+0

Sachez que le rendu de noscript ne se produit que lorsque le navigateur ne supporte pas JavaScript si l'utilisateur l'a désactivé. Il ne sera pas rendu si une erreur JavaScript provoque l'arrêt de l'exécution de JS. –

3
<!-- gatewayPage.php --> 
<noscript> 
    <div style="background-color:red;font-size:14pt;"> 
     This site will be very boring unless you enable Javascript! 
    </div> 
    <!-- if you're convinced that bots won't follow your redirect, add this: --> 
    Proceed to <a href="myRealHomePage.php">MySite</a> anyway 
</noscript> 
<script> 
    documment.location = "myRealHomePage.php"; 
</script> 
+0

J'espère juste que le moteur de recherche suit les redirections JavaScript. – epascarello

+0

c'est mauvais pour le référencement, car les robots des moteurs de recherche ne peuvent pas suivre les redirections JavaScript. –

+0

Peut-être il était une fois, mais Googlebot suit définitivement le mien. – egrunin

Questions connexes