单击JavaScript中特定类的所有元素?

用户名

我是JavaScript新手。我正在尝试创建一个脚本,该脚本将单击属于特定类的所有元素。我的代码似乎无效。我已经通过几个不返回任何结果的调试程序来运行它。通过控制台运行它之后,返回的所有内容都是“未定义的”。我能做些什么?

注意:我想单击的元素是按钮;它们都属于“跟随js-跟随btn btn-primary”类;我只想在数据值“ data-following”等于“ 0”时单击它们。

谢谢!

var numRepeat = document.querySelectorAll("follow js-follow btn btn-primary").length;
for (var i = 0; i < numRepeat; ++i) {
    var currentFocus = document.getElementsByClassName("follow js-follow btn btn-primary")[i];
    if (currentFocus !== null) {
        var followBinary = currentFocus.getAttribute("data-following");
        if (followBinary === "0") {
            currentFocus.click();
        }
    }
}
jfriend00

首先,还不清楚您要完成什么。如果您可以包含一些HTML并用言语解释您实际上要做什么,那么我们可以为您提供更好的解决方案的最佳思路。

然后,我看到了几个潜在的问题(试图猜测您实际上在试图做什么):

1) document.querySelectorAll("follow js-follow btn btn-primary")正在寻找这样的标签名称层次结构:

<follow>
    <js-follow>
        <btn>
            <btn-primary>

这真的是您要寻找的,还是您的意思是班级名称?如果是类名,那么您需要.在名称前加一个,或者如果您正在寻找具有任何这些类名的对象,则在其前加一个句号并在它们之间加逗号。

2)运行完全相同的getElementsByClassName()查询numRepeat次没有任何意义只需运行一次并遍历结果。

3)click()通常最好只执行该DOM对象所需的代码并将其传递给所需的DOM对象,而不是调用方法。您可以为点击处理程序使用相同的函数,并在需要时直接调用。

我怀疑问题#1可能是您的主要问题,因为按照现在的方式,它可能会发现零结果。


如果我假设您真正想要的选择器基于寻找具有这些类名称中任何一个的对象,那么您可以使用以下方法:

var items = document.querySelectorAll(".follow, .js-follow, .btn, .btn-primary");
for (var i = 0; i < items.length; i++) {
    if (items[i].getAttribute("data-following") === "0") {
        items[i].click();
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

单击JavaScript中特定类的所有元素?

来自分类Dev

检查所有元素中的特定类

来自分类Dev

如果在特定元素之外单击,请删除具有特定类的所有元素

来自分类Dev

在jQuery中按ID或类单击所有元素

来自分类Dev

从文本中删除具有特定类的所有元素

来自分类Dev

查找div中具有特定类的所有元素

来自分类Dev

如何从所有元素中删除特定的类?

来自分类Dev

Javascript querySelector具有父元素且具有特定类的所有元素

来自分类Dev

单击以将特定类的所有元素复制到剪贴板吗?

来自分类Dev

单击菜单项后,将类添加到具有特定类的所有页面元素

来自分类Dev

JavaScript通过类名称获取所有元素,而排除特定类?

来自分类Dev

您如何防止(单击)将类添加到 ngFor 中的所有元素?

来自分类Dev

在jQuery中具有特定类的所有元素中添加CSS样式

来自分类Dev

jQuery-从具有特定类的元素列表中获取单击项的索引

来自分类Dev

在 JavaScript 中 - 选择具有相同类的所有元素 - 除了单击一个

来自分类Dev

使用C#中的Selenium获取具有特定类的所有元素的属性值的列表

来自分类Dev

BeautifulSoap为具有特定类的div中的所有img获取多个元素

来自分类Dev

如何使用jQuery将具有特定类的所有元素的内容放入变量中

来自分类Dev

触发单击具有特定类和属性的元素

来自分类Dev

JS从元素中删除所有类

来自分类Dev

从所有输入元素中删除类

来自分类Dev

jquery / javascript:如何从父元素的所有子元素中删除“活动”类?

来自分类Dev

使用特定的span类python硒获取页面中的所有元素

来自分类Dev

删除Javascript中具有特定标签名称的所有DOM元素

来自分类Dev

如何在 JavaScript 中获取具有特定属性的所有子元素

来自分类Dev

检索(并传递)特定类的所有元素的ID

来自分类Dev

如何获取特定类的所有元素的ID?

来自分类Dev

CSS选择与特定类组合匹配的所有元素

来自分类Dev

禁用除特定类之外的所有表单元素

Related 相关文章

  1. 1

    单击JavaScript中特定类的所有元素?

  2. 2

    检查所有元素中的特定类

  3. 3

    如果在特定元素之外单击,请删除具有特定类的所有元素

  4. 4

    在jQuery中按ID或类单击所有元素

  5. 5

    从文本中删除具有特定类的所有元素

  6. 6

    查找div中具有特定类的所有元素

  7. 7

    如何从所有元素中删除特定的类?

  8. 8

    Javascript querySelector具有父元素且具有特定类的所有元素

  9. 9

    单击以将特定类的所有元素复制到剪贴板吗?

  10. 10

    单击菜单项后,将类添加到具有特定类的所有页面元素

  11. 11

    JavaScript通过类名称获取所有元素,而排除特定类?

  12. 12

    您如何防止(单击)将类添加到 ngFor 中的所有元素?

  13. 13

    在jQuery中具有特定类的所有元素中添加CSS样式

  14. 14

    jQuery-从具有特定类的元素列表中获取单击项的索引

  15. 15

    在 JavaScript 中 - 选择具有相同类的所有元素 - 除了单击一个

  16. 16

    使用C#中的Selenium获取具有特定类的所有元素的属性值的列表

  17. 17

    BeautifulSoap为具有特定类的div中的所有img获取多个元素

  18. 18

    如何使用jQuery将具有特定类的所有元素的内容放入变量中

  19. 19

    触发单击具有特定类和属性的元素

  20. 20

    JS从元素中删除所有类

  21. 21

    从所有输入元素中删除类

  22. 22

    jquery / javascript:如何从父元素的所有子元素中删除“活动”类?

  23. 23

    使用特定的span类python硒获取页面中的所有元素

  24. 24

    删除Javascript中具有特定标签名称的所有DOM元素

  25. 25

    如何在 JavaScript 中获取具有特定属性的所有子元素

  26. 26

    检索(并传递)特定类的所有元素的ID

  27. 27

    如何获取特定类的所有元素的ID?

  28. 28

    CSS选择与特定类组合匹配的所有元素

  29. 29

    禁用除特定类之外的所有表单元素

热门标签

归档