IE7以下とそれ以外のIEのバージョンおよびIE以外のブラウザで処理を切り替える必要があったので、対応したときのメモ。
IE11からcc_onステートメントが使えないとのことで、下記サイトで紹介されていた方法を参考にしてみました。
従来のIE判別で重用されてきたIEかどうかをたったの1行で判別する方法が効かない。 つまり、コメント(/* */)で囲まれた@cc_onステートメントは文字通り単なるコメントとして無視される。
IE11では@cc_onステートメントを利用したハックが使えなくなった - asamuzaK.jp
$(document).ready(function() {
//ieバージョン判定
var _ieVersion = (function(_doc, reg) {
return _doc.documentMode ? _doc.documentMode :
/*@cc_on!@*/false && navigator.userAgent.match(reg) ? RegExp.$1 * 1 : 0;
})(document, /MSIE\s([0-9]+[\.0-9]*)/),
_isMSIE = _ieVersion > 0 ? true : false;
if(_isMSIE == true) {
if(_ieVersion <= 7 ) {
//IE7以下
}else{
//IE8以上
}//endif
}else{
//IE以外の処理
}//endif
});
手元にIE11がないのでテストできていませんが、IE6~10まではきっちりバージョン判別できました。
IEはバージョンが上がろうと信用できないので、きっちり判別できるようにしておかないとね...。