我正在尝试编写一个脚本,因此,当我单击列表中的一个元素时,所有元素都会被自动单击。
但是问题是,我正在尝试在JS控制台中运行它。
控制台不断抛出一个异常,即click()
中未定义anonymous (some address)
函数。
我也尝试了trigger('click')
事件。但这也不起作用。
我假设问题出在旧版本的jQuery。
任何想法我该怎么做才能一次单击? 这是代码:
$(document).ready(function() {
var e = document.getElementsByTagName("Button");
for (i = 0; i < e.length; i++) {
e.onclick = e.trigger("click");
}
});
这是禁止名称的代码:
<div class="container_element sub_element hover_element">
<div class="wrap_element">
<div class="element_name">
<p>Drut</p>
</div><div class="delete_element delete_banned">
<button value="Drut" type="button">
<i class="remove_element close_room remove_private fa fa-2x fa-close">
</i></button></div></div></div>
这是列表的屏幕截图: https://ibb.co/T0cYVZ2
对于那些想知道为什么我要这样做的人: 我基本上是聊天管理员。有超过2k的被禁者。 我无法一一手动清除所有禁令,这需要几个世纪的时间,这就是为什么我被迫编写此脚本。而且,我没有访问数据库或主机的权限。
答案 0 :(得分:1)
由于您已经在使用jQuery,因此可以:
var $buttons = $('button').click(function(){
// do something when it's clicked
// trigger click on the others also
$buttons.not(this).click()
});
不确定为什么要这样做...似乎不正常
答案 1 :(得分:0)
添加JQuery CDN作为参考,用 script 标签将 $(document).ready()函数括起来,并替换 e.trigger(“ click”) 与 console.log(“ click”)一样-
希望它会对您有所帮助。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(document).ready(function() {
var e = document.getElementsByTagName("Button");
for (i = 0; i < e.length; i++) {
e.onclick = console.log("click");
}
});
</script>