Y at-il un moyen de désactiver un certain script pour tous les navigateurs?désactiver le javascript sur les navigateurs
Répondre
Vous pouvez utiliser la compilation conditionnelle pour déterminer si le client utilise MSIE.
var IE = /*@[email protected]*/false;
qui peut être utilisé comme
if (IE) {
// IE.
} else {
// Others.
}
seulement dans IE, le !
seront compilés et pris dans l'expression, entraînant une nouvelle expression !false
, qui est logiquement true
. Cela fonctionne mieux que $.browser.msie
car il peut être trompé par l'agent utilisateur et aussi mieux que document.all
car cela affecterait également certaines versions d'Opera.
Cela dit, qu'est-ce que vous essayez de désactiver? Vous pouvez également utiliser la détection de caractéristiques. Voici une discussion à ce sujet: Browser detection versus feature detection
Je ne recommanderais pas, mais:
if(!$.browser.msie) {
//non IE script
}
Je fixerait le script pour travailler dans IE, ou l'exclure en fonction de certains disposent du navigateur ne supporte pas ... pas seulement parce que c'est IE. Avec n'importe quel navigateur, une fonctionnalité pourrait être ajoutée via une mise à jour demain, et votre script l'exclurait toujours. Voir $.support
pour plus d'informations sur la détection de fonctionnalités.
Exclure quelque chose de l'exécution car "il n'est pas supporté" est un scénario parfaitement valide. Cependant, exclure quelque chose parce que "IE ne le supporte pas ... quand j'ai écrit ce code" n'est pas une bonne approche. Au lieu de cela, vérifiez si la fonctionnalité dont vous avez besoin est présente, et l'utilisateur obtient l'expérience la plus riche possible dans leur navigateur actuel.
Si vous parlez de IE 6, vous pouvez planter en appelant cette fonction:
function crash_IE6() {for(x in document.open);}
Sérieusement, la façon la plus utilisation de deteting IE vérifie la présence de document.all ... mais ce n'est toujours pas une bonne chose. Vous devriez vérifier nerver quel navigateur fonctionne votre script ... vous devriez juste vérifier la présence des méthodes nécessaires.
Les personnes qui ont voté vers le bas pourraient-elles expliquer pourquoi? : - ° – xavierm02
Je n'ai pas voté en bas mais je m'attendrais à ce que d'autres le fassent parce que la première ligne de votre réponse ne se rapporte pas du tout à la question. Aussi vous dites "Vous devriez vérifier Nerver quel navigateur votre script est en cours d'exécution". Je pense que la plupart des gens ne seraient pas d'accord avec vous à ce sujet. Dans de nombreux cas, vous devez connaître le navigateur que vous utilisez. –
I nerver a dit que savoir que le navigateur que vous utilisez était une mauvaise chose ... Mais cette information peut être erronée ... parce que le client peut vouloir le cacher afin de faire échouer les exploits ... encore vous ne pouvez pas être sûr de votre détection si juste ... Et ce n'est pas l'avenir du tout. Les navigateurs vont changer et vous allez mettre à jour votre détection afin qu'elle détecte tous les navigateurs.La détection des failles est à l'épreuve du temps et vous permet de conserver le même code pour toujours (avec quelques changements mineurs). – xavierm02
Vous ne pouvez pas inclure le javascript pour les navigateurs tout en utilisant IE Microsoft's recommended way of inserting a conditional comment:
<!--[if !IE]>
<script src="myscript.js" type="text/javascript"></script>
<![endif]-->
ou simplement envelopper le code que vous voulez exclure dans le commentaire.
Ce n'est pas la syntaxe d'un commentaire conditionnel "not IE". – Quentin
Selon le site Microsoft, je suis lié à c'est. Si vous pensez que vous savez mieux que s'il vous plaît poster ce que vous pensez est correct, sinon rétracter votre commentaire. –
- 1. Pourquoi les navigateurs permettent-ils de désactiver Javascript?
- 2. activer/désactiver javascript sur le bouton cliquer
- 3. Comment désactiver les erreurs javascript sur "TWebbrowser"?
- 4. Javascript: différents keyCodes sur différents navigateurs?
- 5. appelez compatibilité future fonction javascript sur tous les navigateurs?
- 6. Désactiver ImageButton ASP.NET dans les navigateurs non-IE
- 7. Où les navigateurs stockent-ils le Javascript téléchargé dynamiquement?
- 8. Les navigateurs ne peuvent pas lire le fichier javascript
- 9. jQuery désactiver les options SELECT basées sur Radio sélectionné (besoin de soutien pour tous les navigateurs)
- 10. désactiver le défilement sur le focus d'entrée en javascript
- 11. Supprimer le cache des navigateurs en javascript
- 12. Détection de navigateurs mobiles sur le Web?
- 13. Fonction javascript pour différents navigateurs
- 14. Désactiver le son de Javascript?
- 15. Activer/désactiver le zoom sur Safari iPhone avec Javascript?
- 16. Javascript modal sur le dessus des jeux Flash, dans tous les navigateurs
- 17. Comment désactiver le débogage javascript sur Visual Studio 2008?
- 18. Désactiver le menu 'enregistrer l'image' sur l'iPhone avec Javascript
- 19. Les navigateurs Web interagissent avec le bureau?
- 20. Désactiver Lieu Bar des navigateurs dans Windows Pop-
- 21. Désactiver les validateurs ASP.NET avec JavaScript
- 22. Comment rendre le site Web identique sur tous les navigateurs?
- 23. Problème de compatibilité sur les navigateurs Mac
- 24. Support SVG sur les navigateurs de smartphones
- 25. Problème de mise au point Javascript/Flash sur différents navigateurs
- 26. Désactiver le lien en utilisant javascript
- 27. Fonctions Ajax brisées sur les navigateurs (sur une seule machine)
- 28. .otf polices sur les navigateurs web
- 29. Comment détecter cookie et javascript avec les navigateurs
- 30. Gestion des clés JavaScript et compatibilité avec les navigateurs
J'essaie juste de désactiver un effet jquery fadein uniquement sur ie, car c'est trop lourd. merci pour les détails, c'est exactement ce que je voulais faire. – user295292