8
votes

Ext.isie retourne faux dans IE 11

Quand j'essaie d'utiliser ext.isie dans IE11, je reçois la fausse valeur de retour. Et puis pendant le débogage mon code, je vois que je reçois l'erreur suivante: Erreur JavaScript - MSG: argument invalide., La version de ma extjs est la suivante: 4,2


1 commentaires

Quand j'ai lu la question, je pensais que c'est-à-dire que c.-à-dire que ... lol!


3 Réponses :


11
votes

IE 11 n'est pas officiellement supporté avant EXTJS 4.2.2 (voir propriété isie11 code> ). Microsoft supprimé la pièce msie code> de l'agent utilisateur de IE11 (reportez-vous à la section ici ), qui est la raison pour laquelle il ne fonctionne pas avec les extJs 4.2.1 et ci-dessous.

du code source, pour ExtJS 4.2.1 : P>

isIE = !isOpera && (check(/msie/) || check(/trident/)),
isIE7 = isIE && ((check(/msie 7/) && docMode != 8 && docMode != 9 && docMode != 10) || docMode == 7),
isIE8 = isIE && ((check(/msie 8/) && docMode != 7 && docMode != 9 && docMode != 10) || docMode == 8),
isIE9 = isIE && ((check(/msie 9/) && docMode != 7 && docMode != 8 && docMode != 10) || docMode == 9),
isIE10 = isIE && ((check(/msie 10/) && docMode != 7 && docMode != 8 && docMode != 9) || docMode == 10),
isIE11 = isIE && ((check(/trident\/7\.0/) && docMode != 7 && docMode != 8 && docMode != 9 && docMode != 10) || docMode == 11),
isIE6 = isIE && check(/msie 6/),


0 commentaires

1
votes

Cela fonctionne pour moi:

var isie11 = fenêtre.location.hash = !! window.msinputMethodcontext;


0 commentaires

2
votes

C'est très simple:

navigator.userAgent.toLowerCase().lastIndexOf('rv:11') > -1


0 commentaires