JS.如何获得具有相似类名的div列表?

dmg*_*mgl 4 html javascript

我有html,像这样:

<div id="c0" class="bz_comment bz_first_comment"></div>
<div id="c1" class="bz_comment"></div>
<div id="c2" class="bz_comment"></div>
<div class="bz_add_comment"></div>
Run Code Online (Sandbox Code Playgroud)

如何在JavaScript(不使用JQuery)中以"bz_comment [anysymbols]"开头的类中获取所有div(在示例中为3 div)的数组?

或者我可以通过以"c [numeric_value]"开头的id得到div的数组?

[numeric_value_can_consist_of_some_numbers]
Run Code Online (Sandbox Code Playgroud)

这是类似于stackoverflow.com/questions/1225611/的问题(但我没有在这个问题上提出的声誉).提前致谢.

Ben*_*aum 5

你应该用 .querySelectorAll

var matching = document.querySelectorAll('[class*="bz_comment"]')
Run Code Online (Sandbox Code Playgroud)

我在你的代码中看到了一些令人担忧的事情:

  • 您有顺序数字ID,请考虑使用a Array来表示顺序数据.
  • 您正在按类名标识符选择内容,如果必须这样做 - 请改用data-*属性.更好的是,将元素存储在数组中,并直接引用它们.

  • @RUJordan实际上,IE8支持`.querySelectorAll` (3认同)