迭代相同元素上的类

Cur*_*ewe 3 javascript jquery

如果我有一个div,它有多个类分配给class属性,是否可以使用each()jQuery中的函数迭代它们?

<div class="class1 differentclassname anotherclassname"><div>
Run Code Online (Sandbox Code Playgroud)

Ori*_*iol 13

在JavaScript中,要获取类列表,您可以使用

  • .className.split(' '),返回一个 Array
  • (HTML5).classList,返回一个DOMTokenList

在jQuery中,您可以使用.prop()get classNameclassList属性.

要迭代它们,您可以使用:

  • 一个for循环,例如for(var i=0; i<classes.length; ++i)
  • (ES6)一个for...of循环,例如for(var cl of classes).
  • (ES5)forEach,仅适用于数组,例如classes.forEach(fn)
  • (jQuery)$.each,例如$.each(classes, fn)

如果您使用classList但想要迭代使用forEach,则可以将其DOMTokenList转换为Array使用

  • [].slice.call(classes)
  • (ES6) Array.from(classes)