如何通过 class 名称与多个 class 名称匹配来 javascript 中的 select 元素?
How to select elements in javascript by class name matching with multiple class names ?
我正在尝试编写一个 javascript,它将 select 一个与值“_3eAQiD”或“_2UDlNd”中的任何一个相匹配的元素?我正在使用的页面经常更改 class 名称?
目前,我正在使用以下代码:
result.item = getItemName("_2UDlNd");
我将 class 名称“_2UDlNd”传递给 getItemName() 函数,我将其用作参数以通过 class 名称获取元素:
itemName = document.getElementsByClassName(item_class)[0].innerText;
但是,有什么办法可以将多个 class 名称(用 OR 分隔或以数组形式)传递给 getItemName() 函数,这样 'getElementsByClassName' 可以 select class 名称与 class 名称匹配的项目?
像这样:
result.item = getItemName("_2UDlNd" || _3eAQiD);
我的问题是,由于网页一直在更改 class 名称,我必须不断更新 getItemName 函数中的 classname 吗?我可以通过什么方式使过程动态化?
使用querySelectorAll
和逗号:
console.log(document.querySelectorAll('._3eAQiD , ._2UDlNd'));
<div class="_3eAQiD">
A
</div>
<div class="_2UDlNd">
B
</div>
您可以使用 querySelectorAll
:
result.item = document.querySelectorAll("._2UDlNd,._3eAQiD")[0].innerText;
我正在尝试编写一个 javascript,它将 select 一个与值“_3eAQiD”或“_2UDlNd”中的任何一个相匹配的元素?我正在使用的页面经常更改 class 名称?
目前,我正在使用以下代码:
result.item = getItemName("_2UDlNd");
我将 class 名称“_2UDlNd”传递给 getItemName() 函数,我将其用作参数以通过 class 名称获取元素:
itemName = document.getElementsByClassName(item_class)[0].innerText;
但是,有什么办法可以将多个 class 名称(用 OR 分隔或以数组形式)传递给 getItemName() 函数,这样 'getElementsByClassName' 可以 select class 名称与 class 名称匹配的项目?
像这样:
result.item = getItemName("_2UDlNd" || _3eAQiD);
我的问题是,由于网页一直在更改 class 名称,我必须不断更新 getItemName 函数中的 classname 吗?我可以通过什么方式使过程动态化?
使用querySelectorAll
和逗号:
console.log(document.querySelectorAll('._3eAQiD , ._2UDlNd'));
<div class="_3eAQiD">
A
</div>
<div class="_2UDlNd">
B
</div>
您可以使用 querySelectorAll
:
result.item = document.querySelectorAll("._2UDlNd,._3eAQiD")[0].innerText;