单击功能在JavaScript控制台中不起作用?

时间:2019-07-16 20:59:34

标签: javascript jquery click

我正在尝试编写一个脚本,因此,当我单击列表中的一个元素时,所有元素都会被自动单击。

但是问题是,我正在尝试在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的被禁者。 我无法一一手动清除所有禁令,这需要几个世纪的时间,这就是为什么我被迫编写此脚本。而且,我没有访问数据库或主机的权限。

2 个答案:

答案 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>