Identifier IE9/IE10 à l'aide de jQuery
J'ai un code jQuery qui fonctionne bien pour google Chrome/Mozilla mais pas IE.
if ($("html").hasClass("ie")) {
$(function(){
$('.green-column, .red-column, .grey-column').click(function() {
alert ($(this).attr("data-type"));
});
});
}
else {
$(function(){
$('.green-column, .red-column, .grey-column').click(function() {
$("<div title='Selected Task is:'>" + $(this).attr("data-type") + "</div>").dialog({
modal: true,
resizable: false,
buttons: [
{
text: "OK",
click: function() { $( this ).dialog( "close" ); }
}
]
});
});
});
}
</script>
<!--[if IE 7]> <html lang="en-us" class="ie"> <![endif]-->
<!--[if IE 8]> <html lang="en-us" class="ie"> <![endif]-->
<!--[if gt IE 8]><!--> <html lang="en-us" class="ie"> <!--<![endif]-->
J'ai donc l'intention d'utiliser une alerte pour IE9/IE10, mais je ne suis pas en mesure de différencier entre les navigateurs. Quelqu'un peut me dire comment faire pour identifier IE9/IE10 en jQuery/HTML?
Il n'est pas bon de différences entre les navigateurs, ni de refuser l'accès par un navigateur. JQuery devrait fonctionner avec IE 9 & 10, de sorte que peut-être il ya une défaillance dans votre code HTML ou CSS. Essayer de résoudre ce problème et de ne pas utiliser le navigateur en reniflant.
Si vous avez un rendu bug qui se produit uniquement dans un certain navigateur et le seul moyen pour résoudre ce problème est de changer un slideUp() pour un hide(). Seulement pour certains navigateurs...
Si vous avez un rendu bug qui se produit uniquement dans un certain navigateur et le seul moyen pour résoudre ce problème est de changer un slideUp() pour un hide(). Seulement pour certains navigateurs...
OriginalL'auteur nkt | 2013-03-27
Vous devez vous connecter pour publier un commentaire.
Peut être réalisé sans l'aide de bibliothèques ou de compilation conditionnelle:
IE9
:if(document.addEventListener && !window.requestAnimationFrame) { alert("IE9") }
OriginalL'auteur dav
Il suffit de faire comme ceci
Cela devrait fonctionner pour la version jQuery en vertu de la 1.9. Si vous utilisez de 1,9+, lisez ce fil ou envisager d'utiliser modernizr.
Seulement dans 1,9+
Ce travail uniquement dans les versions de jquery avant 1.9. L' $.navigateur a été supprimé à partir des versions > 1.9.
OriginalL'auteur Eli
Le seul moyen fiable de détecter la version de IE (éventuellement émulé) est de combiner compilation conditionnelle et un
document.documentMode
vérifier.De compilation conditionnelle est optionnel, mais il permet de ne jamais faire fonctionner la IE-script de détection de non-IE navigateurs.
Par exemple:
Le code précédent n'est pas protégé contre les minifiers. Si vous allez à rapetisser votre code, mettre la compilation conditionnelle des trucs dans une chaîne de caractères, et
eval
:Compilation conditionnelle a été retiré de IE11.
document.documentMode
est toujours là.heh, pas un gros problème.. d'ici là, nous aurons de meilleures normes de la croix-navigateur et ça va être l'héritage (Pré-IE10 et Post IE10) 🙂
OriginalL'auteur Rob W
Les anciennes versions de jQuery avant 1.9 offert
$.browser
de l'obtenir. Maintenant jQuery veut que vous vérifiez pour des fonctions par le biais d'$.support
.Une très bonne alternative est de modernizr (http://modernizr.com/). Modernizr ajoute des classes à la racine de votre élément comme
msie
ouie9
ouwebkit
outouch
et ainsi de suite.De sorte que vous pouvez facilement vérifier:
Vous n'auriez pas des classes comme " ie7 " en utilisant uniquement jQuery.
OriginalL'auteur dersvenhesse
Je sais que c'est une vieille question. mais dans le cas où vous n'avez pas trouvé de réponse.
Afficher un message si le navigateur est internet explorer 9 ou supérieur
OriginalL'auteur Dany
Vous pouvez toujours le détecter à l'aide de javascript natif...
vérifiez ce post:
La détection du navigateur en JavaScript?
OriginalL'auteur tbem