我有以下HTML:
<div class="box-row">
<div class="box c2-3">
<div class="box-overlay"></div>
<div class="box-letter"></div>
</div>
<div class="box c2-4">
<div class="box-overlay"></div>
<div class="box-letter"></div>
</div>
<div class="box c2-5">
<div class="box-overlay"></div>
<div class="box-letter"></div>
</div>
<div class="box c2-6 trr">
<div class="box-overlay trr"></div>
<div class="box-letter"></div>
</div>
</div>
我想随机选择类别为c2-3,c2-4,c2-5,c2-6的元素之一并触发点击。
这是我到目前为止的代码:
var map = [
'c2-3', 'c2-4', 'c2-5', 'c2-6',
];
var x = Math.floor((Math.random() * 4));
var element = document.getElementsByClassName(map[x]);
这时我想触发点击,但不确定如何执行:
element.trigger('click'); ??
答案 0 :(得分:2)
使用element.click();
而不是element.trigger('click');
,但是,您只需要获取一个元素,或遍历从HTMLCollection返回的.getElementsByClassName()
。
例如,循环:
var elements = document.getElementsByClassName(map[x])
elements.forEach(element => element.click())
...或者,获取单个元素(仍使用getElementsByClassName
):
var element = document.getElementsByClassName(map[x])[0]
element.click()
或者,您可以使用querySelector
:
var element = document.querySelector(`.${map[x]}`)
element.click()