在类名中添加包含特殊文本的类

时间:2016-10-26 07:00:27

标签: javascript css css3

我下载了一个CSS文件,看起来像这样(前几行)

[class^="flaticon-"]:before, [class*=" flaticon-"]:before,
[class^="flaticon-"]:after, [class*=" flaticon-"]:after {
    font-family: Flaticon;
    font-size: 20px;
    font-style: normal;
    margin-left: 20px;
}

.flaticon-3dm-file-format:before {
    content: "\f100";
}

问题是并非所有文件扩展类都以相同的方式编写。

.flaticon-3gp-file-format-variant:before {
    content: "\f103";
}

一个类看起来像这样

$(myelement).addClass('flaticon-' + extension + '-file-format');

所以这行代码有时会起作用。

有没有办法在jQuery中查找并添加包含flaticonextension-type的特定类?

1 个答案:

答案 0 :(得分:1)

CSS选择器中使用的内容也可以与Jquery选择器一起使用..

所以你需要的只是

$('[class^="flaticon-"][class*="-file-format"]')
  • [class^="flaticon-"] - >使用flaticon-
  • 选择类开头(^)的所有元素
  • [class*="-file-format"] - >在名称
  • 中选择名为-file-format的所有元素(*)

因此,当你将它们组合起来时,意味着选择一个元素,该元素的类以flaticon-开头,并且在任何地方后都有-file-format

因此,这将使用类

选择您的元素

.flaticon-3dm-file-formatflaticon-3gp-file-format-variant