IE8は標準モードと互換表示モードでユーザエージェントが変わってしまうようです。 つまり、 if (navigator.userAgent.indexOf("MSIE 8.") != -1) alert("is IE8"); else alert("isn't IE8"); これでは互換表示モードのときに判定を間違えます。 そこで、IE8から新しくユーザエージェントに含まれることになった"Trident"トークンを見て判定します。 if (navigator.userAgent.indexOf("Trident/4.0") != -1) alert("is IE8"); else alert("isn't IE8"); 一応、 if (navigator.userAgent.indexOf("MSIE")!=-1 && navigator.userAgent.indexOf("Triden