【问题标题】:innerHTML replaces whole documentinnerHTML 替换整个文档
【发布时间】:2013-09-09 10:59:08
【问题描述】:

我有一个 setInterval 函数,它每秒替换特定 div 元素中的文本。我的正文中也有我想保留的文本。

在不覆盖整个文档的情况下保留文档中文本的最简单方法是什么?

<html>
<div id="timer" </div>
<script>
         window.onload = setInterval(function(){refreshTime()},1000);
         function refreshTime()
         {
              document.getElementById("timer").innerHTML = ""+DAYS+" Days:"+HOURS+" Hours:"+(minutes)+" Minutes:"+seconds+" ;
               time = time+1;}
</script>
<body>
    <p>
      sOME TEXT I WANT TO KEEP ON 
    </p>

</body>

我删除了很多不必要的代码,让你们更容易阅读。我希望你们明白我在问什么。这是我第一次上SO

【问题讨论】:

  • 为什么在&lt;body&gt; 标记之前声明了&lt;div 元素(缺少结束&gt;)?另外,不是您要问的,但是从setInterval()(这将是一个数字,您以后可以与clearInterval()一起使用的ID)作为.onload处理程序分配返回值是没有意义的.
  • 我只是在做实验。不知道 setInterval 返回一个可以与 clearInterval 一起使用的 id。谢谢你

标签: javascript html dom innerhtml


【解决方案1】:
<div id="timer" </div>

把它改成&lt;div id="timer"&gt;&lt;/div&gt; 并粘贴到body标签中

【讨论】:

  • 这行得通,非常感谢。我认为因为“计时器”现在是 body 的孩子,它不会替换整个文本?
猜你喜欢
  • 1970-01-01
  • 2013-01-10
  • 1970-01-01
  • 2012-08-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-08
  • 2022-12-21
相关资源
最近更新 更多