jQuery的toggleClass和.css文件中类名称的顺序

马约

背景:

我有一个带有指向右箭头的文本,单击文本/箭头将显示一个div并将arrowRight替换为arrowDown。

问题:

问题源于我的代码根据.css文件中的顺序工作的事实,我不知道为什么这对jQuery很重要。

CSS:

.arrow{display:inline-block;  width:15px; height:10px;background-repeat:no-repeat;}
.arrowRight{background-image:url("../graphics/triangleRight.gif"); }
.arrowDown{ background-image: url("../graphics/triangleDown.gif");}

HTML:

<div id="showListOfBids" class="align-c">
     List of Bids <div class="arrow arrowRight">
</div>

查询

$("#showListOfBids").click(function(){
   $(".bidList").toggleClass("show");
   $(".arrowRight").toggleClass("arrowDown");
});

开发人员工具>元素

切换添加和删除arrowDown

切换关闭:

<div class="arrow arrowRight"></div>

开启:

<div class="arrow arrowRight arrowDown"></div>  

问题:为什么.arrowDown类的顺序会影响显示?AFAIK使用jQuery时不会重新解析css文件。jQuery将类添加到DOM,而解析器仅搜索该元素。

评论:我不喜欢在课堂上加倍学习。我使用不正确吗?我正在使用removeClass和addClass并切换到toggleClass

费利克斯·克林(Felix Kling)

为什么.arrowDown类的顺序会影响显示?

因为这就是CSS的工作方式。如果有两个具有相同特异性的规则,则该规则将出现在文件的后面。

就您而言,两者.arrowRight.arrowDown具有相同的特异性。如果这两个类别都包含一个元素,则.arrowDown获胜。如果您切换规则,.arrowRight将获胜。

AFAIK使用jQuery时不会重新解析css文件。jQuery将类添加到DOM,而解析器仅搜索该元素。

没错,它与jQuery无关。浏览器仅查看元素具有哪些类,并为其应用规则。


因此,CSS规则的顺序很重要,与JavaScript或jQuery无关。认为它是“功能”。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

jQuery toggleClass和CSS动画div宽度

toggleClass jQuery类分配

使用 jQuery slideDown 或 toggleClass 和 css 过渡添加向下滑动效果

jQuery中的toggleClass跳过CSS规则

jQuery toggleclass适合css悬停效果

jQuery,使用.queue()级联CSS toggleClass()

在 jquery 文件中切换类和执行顺序

在Sass中动态生成类名称和CSS属性

jQuery同时更改文本和toggleClass

jQuery toggleclass和单击不起作用

打字稿:库文件中的名称空间和类名称相同时,导入名称空间

jQuery将toggleClass保存在Cookie或localStorage中

jQuery-toggleClass()隐藏DIV,但不隐藏DIV中的项目

为什么jquery toggleClass()只在同胞中起作用?

当元素位于单独的 div 中时,如何使 toggleClass jQuery 工作?

如何使用python将保存在.txt文件中的乐谱和名称按字母顺序排序?

如何使CSS背景属性与jQuery中的toggleClass()一起使用?

遍历jQuery中的顺序嵌套类?

Webpack和React识别CSS类名称

如何用Javascript而不是jQuery做scrollTop和toggleClass?

JQuery - 单个元素上的 toggleClass 和 removeClass 功能

jQuery .closest、.find 和 .toggleClass 到 vanilla javascript

Logback:如何从日志文件中删除类名称和日志级别?

密封特征的方法在类文件中给出重复的字段名称和签名

将具有名称空间和类的JavaScript库捆绑在不同文件中

筛选具有通用“类”名称的DOM中的元素并在其上应用CSS-JQuery

将事件ID与特定的类和toggleClass一起使用

jQuery toggleClass 不切换类 - 它适用于其他相同的元素

在jQuery中使用toggleClass时如何停止所有类的切换