JQuery UI对话框iFrame内容为空



所以这是一个奇数。我继承了一个包含JQuery UI对话框的页面,该对话框显示iFrame。该对话框在Chrome浏览器中正确打开,IE 10/IE 10兼容模式打开。然而,一些用户报告IE 11兼容模式打开时出现问题,对话框打开但未显示其内容。我已经测试了IE 11和兼容模式,它对我来说很好,但其他人仍然会出现问题。

该网站要求"兼容性模式"为"打开",因为测试"兼容性模式被禁用",对话框内容出现,但网站的其他部分受到影响。

我尝试在作为对话框中iFrame内容的页面中强制关闭兼容性模式。

<meta http-equiv="X-UA-Compatible" content="IE=Edge" />

(直接在/title后面)但那无济于事。在创建带有style="display:hidden"的对话框时,我删除了css,但这没有帮助。

这是对话框代码

$(document).ready(function() {
$('a.dia').live('click', function() {
var url = this.href;
var dialog = $("#dialog");
dialog.empty();
dialog.append($("<iframe />").attr("src", url).attr("frameBorder", "0")).dialog({
modal: true,
height: 600,
width: 450,
title: 'Dialog',
close: function() { window.location.reload(); }
});
return false;
});
});
function closeIframe() {
$('#dialog').dialog('close');
return false;
}
</script>

JQuery 1.4.2

JQuery UI 1.8.2

有人见过这个吗?

到目前为止,我的解决方案是将iframe的默认src设置为"about:black",并在jQuery对话框中open方法将属性设置为实际值。这样,由于某种原因,url即使在IE 11中也能正常加载。

最新更新