document.write()是否覆盖文档?

这个:

function myFunction()

{

document.write("sup");

}

在html中调用,例如:

<div id="myDiv">

<script>myFunction();</script>

</div>t

supmyDivdiv元素添加一个字符串。正是我想要的。但是,这:

function loadFile(uri)

{

var r = new XMLHttpRequest();

document.write("trying to open: " + uri);

r.open('GET', uri, true);

r.send(null);

r.onreadystatechange = function()

{

if (r.readyState == 4)

{

myFunction();

}

}

}

function myFunction()

{

document.write("sup");

}

这样称呼:

<div id="myDiv">

<script>loadFile("filename.txt");</script>

</div>

似乎正在覆盖我的整个html文件。即,当我在Firefox中运行它时,它仅显示字符串sup(即页面的全部内容),但页面似乎仍在加载(FF的加载图标仍在进行动画显示,显然是无限的)。

首先,这将仅在本地,离线使用,作为呈现数据的快速便捷方式(使用html +

js和网络浏览器而不是纯文本文件)。我要加载的是本地文本文件,然后将其某些内容作为html页面的一部分。与我的第一个示例相同,但首先加载文本文件。

回答:

问题是,当文档加载后运行document.write时,它将覆盖整个文档。如果在此之前运行,则不会覆盖它。

您要做的是设置特定元素的innerHtml,如下所示:

document.getElementById("myDiv").innerHTML="Sup";

以上是 document.write()是否覆盖文档? 的全部内容, 来源链接: utcz.com/qa/401006.html

回到顶部