jQuery-基于前缀获取元素类

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (23)

从下面元素中的类中获得像“淡出”这样的字符串的最快方法是什么?

<div class="MyElement fx-fade"> ... </div>
提问于
用户回答回答于
var classes = $('.MyElement').attr('class').split(' ');
for (var i = 0; i < classes.length; i++) {
  var matches = /^fx\-(.+)/.exec(classes[i]);
  if (matches != null) {
    var fxclass = matches[1];
  }
}
用户回答回答于

如果你想寻找以“淡出”结尾的东西,你可以使用:

$("*[class$='fade']")

对于以“淡出”开头的类的元素,你可以使用:

$("*[class^='fade']")

要获得包含“淡出”的元素,需要使用(这比遍历类名字符串要快)

$("*[class*='fade']")

“*“获取所有元素,以便可以将其替换为所需的元素。

如果你想要一个以“FX-”开头的类名元素,你可以这样做:

var classname = "";
var elArray  = $("*[class*='fx-']");

for (var a= 0; a < elArray .length; a++)
{
   //fade
   classname = elArray[a].split("-")[1]; 
}

for循环中使用的数组将拥有所有元素,类名为“FX-”。

而不是用for循环检查元素的正确类名。

扫码关注云+社区