我希望用户单击后三秒钟后更改文本。我希望用户单击并在屏幕上放置一些文本(这已经起作用了),三秒钟后文本变为“无”(“)。我尝试的代码是:
JavaScript代码:

function almuerzo() {
    var date = new Date();
    var horas = date.getHours();
    var minutos = (date.getMinutes() < 10? '0' : '')+ date.getMinutes();
    document.getElementById("accion").innerHTML = horas + ":" + minutos + " Almuerzo";
}

function cambio() {
    var contador = 0;
    setInterval(cambio, 1000);
    contador++;
    if(contador == 3)
        document.getElementById("accion").innerHTML = "";
    }

HTML格式:
<h1 id="accion" class="t-accion"></h1>
<img src="img/almuerzo.png" class="i-almuerzo" height="100px" onclick="almuerzo()" onclick="cambio()" />

最佳答案

你只需要一个函数就可以做到。首先更改文本,并在三秒后使用setTimeout删除文本。
比如:

var timeout;
function changeText() {
  var elem = document.getElementById("accion");

  var date = new Date();
  var horas = date.getHours();
  var minutos = (date.getMinutes() < 10 ? '0' : '') + date.getMinutes();

  elem.innerHTML = horas + ":" + minutos + " Almuerzo";

  clearTimeout(timeout);
  timeout = setTimeout(function() {
    elem.innerHTML = "";
  }, 3000);
}

关于javascript - X秒后如何更改文字?的HTML,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43515702/

10-10 01:37