首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Javascript按类单击元素

Javascript按类单击元素
EN

Stack Overflow用户
提问于 2014-08-30 23:55:29
回答 4查看 198.4K关注 0票数 46

因此,我正在编写一个可以在页面上运行的脚本,但是我想点击这个元素,不幸的是,它没有一个id,我试图在它上使用.click()函数,但是它不起作用,这就是我所拥有的,有人知道如何修复它吗?这是类中唯一的元素

代码语言:javascript
运行
复制
var classes = document.getElementsByClassName('rateRecipe btns-one-small');
var Rate = classes[0];
Rate.click();
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-08-30 23:58:16

我建议:

代码语言:javascript
运行
复制
document.querySelector('.rateRecipe.btns-one-small').click();

上面的代码假设给定元素具有这两个类;否则,如果空格意味着一个祖先-后代关系:

代码语言:javascript
运行
复制
document.querySelector('.rateRecipe .btns-one-small').click();

getElementsByClassName()方法使用单个类名(而不是使用CSS选择器的document.querySelector()/document.querySelectorAll() ),您将两个类名(可能是类名)传递给该方法。

参考文献:

票数 67
EN

Stack Overflow用户

发布于 2018-07-06 09:48:49

如果要单击某个类选择的all元素,可以使用此示例(在“喜爱的轨道”页面中的last.fm上使用到“取消所有”)。

代码语言:javascript
运行
复制
var divs = document.querySelectorAll('.love-button.love-button--loved'); 

for (i = 0; i < divs.length; ++i) {
  divs[i].click();
};

使用ES6和Babel (不能直接在浏览器控制台中运行)

代码语言:javascript
运行
复制
[...document.querySelectorAll('.love-button.love-button--loved')]
   .forEach(div => { div.click(); })
票数 20
EN

Stack Overflow用户

发布于 2021-10-29 07:46:38

这正是您想要的(如果您知道按钮的索引):

代码语言:javascript
运行
复制
var rate = document.getElementsByClassName('rateRecipe btns-one-small')[0];
rate.click();

或直接作用

代码语言:javascript
运行
复制
document.getElementsByClassName('rateRecipe btns-one-small')[0].click();

用jQuery

代码语言:javascript
运行
复制
$('.rateRecipe .btns-one-small').click(function(){
    var vIndex = $('.rateRecipe .btns-one-small').index(this);
    //vIndex is the index of buttons out of multiple
    
    //do whatever 
    //alert($(this).val());//for value
});
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25587762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档