我從別處得到了答案。基本上它包括所有的頁面(不只是身體),但IE瀏覽器選擇不渲染它(可能是正確的行爲)
因此,我編制了一些代碼來提取CSS,將它放在頭部,身體的東西在目標股利。因此,外部頁面的html和css都會得到。
<html><head>
<script type="text/javascript" language="javascript">
function include(lyr,url)
{
if (document.all)
{
try {
var xml = new ActiveXObject("Microsoft.XMLHTTP");
xml.Open("GET", url, false);
xml.Send()
}
catch (e) {
var xml = new ActiveXObject("MSXML2.XMLHTTP.4.0");
xml.Open("GET", url, false);
xml.Send()
}
}
else
{
var xml=new XMLHttpRequest();
xml.open("GET",url,false);
xml.send(null);
}
text = xml.responseText;
text = text.replace("<html>","");
text = text.replace("</html>","");
text = text.replace("<head>","");
text = text.replace("</head>","");
text = text.replace("<body>","");
text = text.replace("</body>","");
splittext = text.split("<style type=\"text/css\">");
splittext = splittext[1].split("</style>");
css = splittext[0];
everythingelse = splittext[1];
addCss(css);
document.getElementById(lyr).innerHTML=everythingelse;
}
function addCss(cssCode) {
var styleElement = document.createElement("style");
styleElement.type = "text/css";
if (styleElement.styleSheet) {
styleElement.styleSheet.cssText = cssCode;
} else {
styleElement.appendChild(document.createTextNode(cssCode));
}
document.getElementsByTagName("head")[0].appendChild(styleElement);
}
</script>
</head>
<body onload="include('adiv','test.htm')">
<div id="adiv">sdfgboui hsdguhwruh o ikuy </div>
</body>
</html>
的代碼是遠非完美,但它的工作,我可能會改善位碼位現在我知道它的工作原理
請出示一些代碼。 – 2010-08-07 20:19:37
我不認爲顯示代碼會添加對問題有用的任何內容。我寫的代碼不再存在,因爲它已經被替換爲嘗試使用隱藏的iframe獲得相同的結果。 – MrVimes 2010-08-07 22:05:02
我想我可以幽默你。 – MrVimes 2010-08-07 22:05:46