如何在IE上的对象中显示远程html?

时间:2012-05-08 07:14:06

标签: javascript internet-explorer html

我尝试在一个无法在IE上显示的对象中嵌入一个html。这是js代码

 document.getElementById('one').innerHTML = '<'+'object id="foo" name="foo" type="text/html" data="'+which.href+'"><\/object>';

这是html

<div id="one"><object id="foo" name="foo" type="text/html" data="$jsurl/animate/right/ap2.html"></object></div>

代码在其他浏览器上正确显示,但不能在IE上显示,并且IFRAME不是一个选项,因为我需要它在div顶部覆盖透明。

需要知道如何在IE或任何其他选项上显示它?

1 个答案:

答案 0 :(得分:0)

您可以使用XmlHttpRequest对象获取远程HTML文件的内容,然后将HTML代码作为div的innerHTML插入。

代码可能是这样的:

var request = null;

if (window.XMLHttpRequest) {
     // If IE7, Mozilla, Safari, and so on: Use native object.
      request = new XMLHttpRequest();
}
else if (window.ActiveXObject) {
     // ...otherwise, use the ActiveX control for IE5.x and IE6.
     request = new ActiveXObject('MSXML2.XMLHTTP.3.0');
}

request.open('GET', '$jsurl/animate/right/ap2.html', false); 
request.send();

if (request.status == 200) {
    document.getElementById('one').innerHTML = request.responseText;
}