使用`document.write`在setTimeout之后清除页面的问题

时间:2018-04-22 20:17:32

标签: javascript

我试图在我的网站上显示UL(IL)元素的数量(有延迟)。

这是我使用的功能(listednumber.js);

setTimeout(function() { 
document.write($("#myUL li").length);
}, 5000);

HTML:

<i class="fas fa-archive"></i> <a href="listed.html"> Listed :</a> <b><script type="text/javascript" src="./js/listednumber.js"></script></b>

当计时器变为0时,它会执行并显示正确的数字,但数字会显示在新的空白网页上,而不是当前的网页上。 如果我通常在没有计时器的情况下使用document.write,则该数字不会显示在新网页上,而是显示在当前网页上。

我想编号显示在当前网页上。 我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

document.writedocument.wrong。请使用更现代,更不容易做混乱的事情。此函数尝试写入当前文档。如果文档已经处理完毕,则文档将替换为带有参数的空白文档。你不希望这样;改为使用正确的DOM方法。

选择要插入文本的<b>元素:

<b id="liCount"></b>

listednumber.js:

setTimeout(function() {
  $('#liCount').text($("#myUL li").length)
}, 5000);