javascript - 如何切换扩展元素的类?

标签 javascript jquery css html toggle

在此fiddle code当我将鼠标移到黑框上时,应该会出现一个红框,但实际上并没有。

这个脚本正确吗?

$('nav#products ul li div#info').hover(function () {
  $('nav#products ul li div#more_info').toggleClass('show');
});

最佳答案

是因为css specificity , ID 规则优先于类规则 - 你有一个 ID 规则设置 display: none 然后是一个类规则设置 display:block 但 ID 规则将始终覆盖类规则。

您需要结合这两者来创建更具体的规则来覆盖 ID 规则

#more_info.show {
    display:block;
}

演示:Fiddle

另请注意,由于您拥有目标元素的 ID,因此您可以使用简单的 ID 选择器而不是您使用的更复杂的选择器 - 元素的 ID 在文档中必须是唯一的

关于javascript - 如何切换扩展元素的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21811089/

相关文章:

jquery - Ennui : how to keep navigation arrows visible 的内容 slider

html - 将双指缩放 div 图像添加到移动设备上的不可缩放视口(viewport)

css - 如何为 UI 小部件使用绝对或固定动态定位

javascript - 在via nashorn中实例化类

javascript - 如何通过 JS 确定是否在我的样式中应用了 chop ?

JavaScript/jQuery AJAX - 将异步数据返回到我的同步程序中

javascript - 按数组过滤数组 Underscore JS

java - 我应该使用哪个 .JAR 来嵌入 Jetty?

javascript - 打印包含多于 1 页的表格数据时,如何在浏览器打印中添加分页符

javascript - 获取错误 :unable to execute js call:_fbBatchedBridge is undefined while executing in simulator