如何通过单击文本删除事件侦听器?

时间:2019-04-06 20:19:09

标签: javascript event-listener

我使用eventListener来添加textDecoration,那么如何使用eventListener删除textDecoration? 这是待办事项清单,我需要删除“完成”任务才能完成。

我只是为了完成任务而写的:

TVDataSource

并为删除“ textDecoration”而编写了此代码,但不起作用,也没有删除textDecoration:

pTag.addEventListener("click", taskDone);
function taskDone(){
  taskTag.style.textDecoration = "line-through";
}

所以请告诉我该怎么办,解决方案是什么?

1 个答案:

答案 0 :(得分:0)

对于DOM对象,还有removeEventListener方法,该方法将从对象中删除侦听器。您可以称之为:

pTag.removeEventListener("click", taskDone);

回答实际问题:添加一个签入回调函数就足够了。

function taskDone(){
  if (isLineThrough) {
       taskTag.style.textDecoration = "none";
       isLineThrough = false;
       return;
  }
  taskTag.style.textDecoration = "line-through";
  isLineThrough = true;
}