javascript - 移除 JavaScript 行为

标签 javascript css hover

我需要删除我在 div 上设置的 JavaScript 行为。 首先,我设置了 CSS(这是一个简单的例子):

#redBloc {
  width: 100px;
  height: 50px;
  background-color: #ad3232;
}

#redBloc:hover {
  background-color: #3270ad;
}

好的,出于某些原因,我需要覆盖鼠标悬停在我的 div 上时的行为。

var redBloc = document.getElementById('redBloc');
redBloc.onmouseover = function() {
  this.style.backgroundColor = 'red';
};

它像我想要的那样工作。 但在我的流程后期,我需要重置 JavaScript 行为,以检索我的 CSS 文件中写入的行为。

我该怎么做?

谢谢

编辑

我不需要覆盖 onmouseleave 事件的行为,但稍后在我的代码中,例如通过按下“禁用行为”按钮。

@T.J.Crowder 的解决方案解决了这个问题。

谢谢大家!

最佳答案

我想你的意思是你想删除特定的背景颜色,以便 CSS 中的背景颜色可以再次显示出来(而不是“行为”)。

如果是这样,将 "" 分配给它:

theElement.style.backgroundColor = "";

如果您真的确实意味着行为并且您不想再触发鼠标悬停处理程序,因为您已经使用onmouseover 来分配它,您可以将其删除通过分配 null:

theElement.onmouseover = null;

关于javascript - 移除 JavaScript 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41147404/

相关文章:

html - 一些悬停操作后 CSS UL LI 菜单不起作用

javascript - 尝试让knockout js检查数据是否每10秒来一次

javascript - 获取具有特定类名的子元素的长度?

javascript - 检查是否填写了所有输入以删除禁用属性

javascript - 如何在禁用 css 时隐藏 div?

javascript - 图像悬停和替换 - jquery

html - 链接/悬停效果不适用于固定导航栏中页面的某些部分

html - 溢出自动/滚动在具有巨大 innerhtml 值的 FF 中无法正常工作

javascript - css 中的动态或自适应类

html - 使用纯 CSS(HTML 列表)将其他子项的属性悬停在同一父项下