我有一个 iFrame,它是通过我的页面上的一些 javascript 生成的,在 jQuery 1.9 之前,我使用一个简单的检查来查看是否正在使用 Internet Explorer,并添加了一些使 iframe 在 ie7 和 ie8 中正确呈现所需的属性。当然这些属性不再有效,除非绝对必要,否则我不希望在我的 HTML 中包含无效代码,因此它们仅适用于 ie8 及以下版本。
var ieOldAttr = " ";
if ($.browser.msie && parseInt($.browser.version, 10) <= 8) {
ieOldAttr = "allowTransparency=\"true\" marginheight=\"0\" marginwidth=\"0\" frameborder=\"0\" ";
}
//Generate iFrame here
pageOutput += "<iframe id=\"feedbackiFrame\" src=\"URLHERE\"" + ieOldAttr + "style=\"border: none; overflow: hidden; height: 540px; width: 415px; position:absolute; left: 5px; top: 5px;\"><\/iframe>";
$(document).ready(function () {
$(pageOutput).appendTo(document.body);
});
在 jQuery 1.9 中,他们弃用.browser
了,而是建议使用modernizer,但我不认为modernizr 能够完成我需要它在这里做的事情。有没有一种我在modernizr中不知道的方法能够检测到这一点并正确呈现iFrame,或者我需要做一些纯javascript来检测浏览器然后将其应用于iFrame。