次のコードは IE8 では正常に実行されますが、IE9 では失敗します:
document.createElement('');
エラー メッセージ: 例外: SCRIPT5022: DOM 例外: INVALID_CHARACTER_ERR (5)
アイデア分析:
ステップ 1: IE9、Firefox、Opera、Safari およびその他のブラウザと互換性があります。
var iframe = document.createElement("iframe");
iframe.setAttribute("id", "yui-history-iframe");
iframe.setAttribute("src", "../../images/defaults/transparent-pixel.gif");
iframe.setAttribute("style","position:absolute;top:0;left:0;width:1px;height:1px;visibility:hidden;");
ステップ 2: IE6-8 との互換性: IE6-8 は iframe の name 属性を変更できないため
var oFrame = isIE ? document.createElement("
包括的な解決策:
var isIE = (document.all) ? true: false; //这里仅仅简单的对是否是IE进行判断,详细浏览器判断:请参考浏览器类型侦测
var ua = navigator.userAgent.toLowerCase().match(/msie ([/d.] + ) / )[1];
if (ua == "9.0") {
isIE = false;
}
var oFrame = isIE ? document.createElement("