Javascript 删除 div 元素

标签 javascript html stopwatch

我正在用 JavaScript 实现秒表。

我想在按下 clear 按钮时删除额外的 div 元素。我添加了函数 cc();,但是 function cc() 不起作用。我的代码有什么问题?

Javascript:

a = 0;
myButton = 0;

function myWatch(flug) {
  if(myButton == 0) {
    Start = new Date();
    myButton = 1;
    document.myForm.myFormButton.value = "Stop!";
    myInterval = setInterval("myWatch(1)", 1);
  } else {
    if(flug == 0) {
      myButton = 0;
      document.myForm.myFormButton.value = "Start";
      clearInterval(myInterval);
    }
    Stop = new Date();
    T = Stop.getTime() - Start.getTime();
    H = Math.floor(T / (60 * 60 * 1000));
    T = T - (H * 60 * 60 * 1000);
    M = Math.floor(T / (60 * 1000));
    T = T - (M * 60 * 1000);
    S = Math.floor(T / 1000);
    Ms = T % 1000;
    document.myForm.myClick.value = H + ":" + M + ":" + S + ":" + Ms;
  }
}
b = 0;

function stop() {
  b++;
  stopa();
}

function stopa() {
  var element = document.createElement('div');
  element.id = pos;
  var objBody = document.getElementsByTagName("body")
    .item(0);
  objBody.appendChild(element);
  rap = "";
  rap = "rap" + b + "=" + H + ":" + M + ":" + S + ":" + Ms;
  element.innerHTML = rap;
}

function cc() {
  document.body.removeChild(element);
}

HTML:

<form name="myForm" action="#">
  <input type="text" size="20" name="myClick">
  <input type="button" value="Start" name="myFormButton" onclick="myWatch(0)" />
  <input type="button" value="Rap" name="Rap" onclick="stop()">
  <input type="button" value="clear" name="clear" onclick="cc()">
</form>
<h3>
  <div id="pos">
  </div>
</h3>

最佳答案

尝试将上下文显式地作为参数传递给 cc() 函数。

js

function cc(el) {
    el.parentNode.removeChild(el);
}

html

<input type="button" value="clear" name="clear" onclick="cc(this)">

关于Javascript 删除 div 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15457411/

相关文章:

javascript - 如何获取动态添加的行中的json数据

javascript - 如何找到div 1的输入标签?

html - Vuetify Offset 不创建任何偏移量

c# - 我应该在读取 ElapsedMilliseconds 之前调用 Stop 吗?

javascript - 如何启用在对话框外部单击

javascript - 使用 JQuery 生成 HTML,然后使用 .html() 对其进行更改。在 FF 中可以,但在 Chrome 中不行?

html - CSS 在按下 CTRL + F5 后应用,但在下一个 Action 中它不会应用,直到我再次按下 CTRL + F5

html - Bootstrap : Fix the text input position

javascript - 重置按钮在使用 JavaScript 的秒表中不起作用

秒表和 foreach 循环的 C# *奇怪* 问题