繁体   English   中英

元素li的onmouseover不起作用

[英]onmouseover for element li doesn't work

我有以下简单的代码,但没有用

<ul>
  <li id="one" onmouseover="this.style.background-color='white';">
    <a href="#">home</a>
  </li>
</ul>

你能告诉我为什么吗。 谢谢

编辑:

以及如何更改标签的颜色,li的onmouseover

在JS中更改样式对象的属性时,将连字符转换为camelCase。

backgroundColor

但是,您正在尝试以错误的方式解决此问题。

如果您真的想在悬停上设置列表项的样式,则可能应该在样式表中使用li:hover 唯一的缺点是,这在IE 6中不起作用(尽管这只是在越来越多地出现在“不支持”框中的古老浏览器上的一种装饰效果)。

也就是说,具有悬停效果时会喊“您现在可以单击!”。 对用户而言-但只有单击列表项的链接部分后,它才能执行任何操作。 这意味着您应设置a元素的样式,而不是li …的样式,但应设置其样式以填充列表项(这在IE6中起作用)。

Listamatic有很多示例。

它将是onmouseover="this.style.backgroundColor='white';"

为什么不为此使用纯CSS?

li:hover {
    background-color: #ffffff;
}

否则,请使用gX和David Dorward的建议。

您还可以使用what:hover或js框架(如jQuery)。 what:hover只有3kb左右,所以我认为值得加载它:)

作为附带说明,我认为您应该查看此列表,以了解CSS样式如何转换为JS。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM