【问题标题】:Need help updating some text repeatedly in Javascript需要帮助在 Javascript 中重复更新某些文本
【发布时间】:2014-03-02 08:35:31
【问题描述】:

所以我的 HTML 正文中有这段代码,

<div id="timer">
 <div id="years">## Years</div>
 <div id="months">## Months</div>
 <div id="days">## Days</div>
 <div id="hours">## Hours</div>
 <div id="minutes">## Minutes</div>
 <div id="seconds">## Seconds</div>
 <div id="milliseconds">## Milliseconds</div>
</div>

我想用我设置的一些变量的值替换“##”,但是随着变量的变化它们被替换,我将如何使用 Javascript 来做这件事?

【问题讨论】:

  • 你有没有尝试过?
  • 解决方案的哪一部分您不清楚?
  • 我曾尝试使用一些 js 来替换文本,但在文本已更改后我无法让它替换文本。有没有办法根据 div 的 id 替换文本,这样内容就无关紧要了?
  • 供将来参考,如果您展示您的尝试,您将获得更好的答案,因为它们将直接与您的问题相关,并且表明您付出了努力

标签: javascript html text replace


【解决方案1】:

你试试这个

var years="12";    
document.getElementById("years").innerHTML=document.getElementById("years").innerHTML.replace("##",years);

var months="11"
document.getElementById("months").innerHTML=document.getElementById("months").innerHTML.replace("##",months);

其他元素也一样

DEMO

更新:

为了重复你将不得不做这样的事情

var seconds=0;
var inner=document.getElementById("seconds").innerHTML;
setInterval(function(){

document.getElementById("seconds").innerHTML=seconds+inner.substring(2);
    seconds+=1;
    },1000);

DEMO2

【讨论】:

  • 那么在岁月改变之后呢?我希望每个 div 的内容随着分钟/秒/小时/等的变化而更新,而无需刷新页面
  • 您只需要更改您的 var 年、月等,并将此代码包含在一个间隔中
  • 所以基本上我应该有一个围绕单独刷新功能的 setInterval?
猜你喜欢
  • 1970-01-01
  • 2014-03-08
  • 1970-01-01
  • 1970-01-01
  • 2015-03-09
  • 2012-02-16
  • 1970-01-01
  • 1970-01-01
  • 2014-03-09
相关资源
最近更新 更多