2010-03-09 9 views
7

Y at-il un moyen de tester pour voir si javascript est activé pour assurer une application nécessaire javascript est pas initié lorsqu'il est désactivé ou autrement non disponibles?Tester si javascript est activé

+0

duplication possible de [Comment détecter si JavaScript est désactivé?] (Http://stackoverflow.com/questions/121203/how-to-detect-if-javascript-is-disabled) –

Répondre

5

J'ai tendance à utiliser de la manière suivante.

1) affiche un message d'erreur par défaut

<div id="noJS">For use, you need JavaScript enabled. (nice images and perhaps a link to your fav. browser)</div> 

2) le désactiver via javascript et afficher le conteneur principal de l'application

$("#noJS").hide(); 
$("#app").show(); 

Si javascript est nécessaire uniquement pour exemple Dans la navigation, vous devriez essayer de fournir une version non-js pour les utilisateurs non-js afin d'augmenter votre audience.

+2

StackOverflow utilise aussi cette technique (pour afficher une bannière rouge en haut de la page) –

+0

Je développerais 'js' en 'JavaScript' dans un message comme celui-ci. De nombreux utilisateurs finaux n'ont aucune idée de ce qu'est «js». – scunliffe

+0

l'a corrigé, même si c'était plus destiné à être un exemple :-) –

0

pas sur la charge initiale. Vous pouvez essayer d'utiliser des astuces comme le paramétrage d'un cookie en JavaScript et le vérifier lors de requêtes ultérieures. Le meilleur moyen est de s'assurer que votre site fonctionne sans JavaScript et d'utiliser JavaScript pour offrir une meilleure expérience.

+0

qu'en est-il des applications qui utilisent explicitement javascript c'est-à-dire gmail? – Tim

+5

@ user270797, Mon Gmail ne nécessite pas Javascript. Gmail dispose d'une version HTML uniquement, qui utilise JavaScript pour les petites fonctionnalités supplémentaires, telles que la recherche de contacts en direct. – strager

6

Il est <noscript>.

+2

n'oubliez pas la mise en garde avec noscript - même si elle n'est pas utilisée, cela ne garantit pas que javascipt est disponible ou fonctionne correctement. Vous pouvez le voir en utilisant Firefox Web Developer pour désactiver javascript. –

+0

@Colin: Les utilisateurs NoScript souffriront le même: http://stackoverflow.com/questions/993387/noscript-tag-javascript-disabled-warning-and-google-penalty/993461#993461 –

0

Vous pouvez créer une page avec un contenu <noscript>, et ont cette redirection en utilisant javascript pour votre application réelle

3

Par défaut, présenter la version sans Javascript. Utilisez Javascript pour rediriger immédiatement l'utilisateur vers la version Javascript (qui ne fonctionnera que si Javascript est activé).

2

Le scénario est le suivant:

  1. visiteur fait la première demande à votre site
  2. Livrer une page qui contient deux cookiesl un avec javascript, un autre avec votre langage côté serveur.
  3. En-tête ou méta rediriger vers une autre page pour les tests.
  4. la page de test, vérifiez si vous avez reçu le serveur cookies livré pour voir si le support des cookies est activé et tester si javascript cookie a été reçu pour le soutien JS permis.
  5. Profitez de vos nouvelles connaissances.
Questions connexes