尝试点击()没有onclick事件的按钮

时间:2018-03-28 14:54:49

标签: javascript

我试图用.click()点击中等拍手按钮。

以下是我尝试的内容:

a medium post上,我运行let btn = document.getElementsByClassName('clapButton')[0];以获取拍手按钮,然后运行btn.click();

检查按钮后,它没有onclick事件,因此我不确定我是否收到了错误的元素,或者是否有其他触发方式它

是否有一些jquery代码或某些事件以不同的方式将事件附加到按钮?谢谢!

修改

很抱歉错过了详细信息,我试图通过firefox扩展程序运行代码。代码也没有通过firefox开发人员的控制台工作(我运行上面的代码)。我不确定为什么它似乎适用于Chrome就好了。

1 个答案:

答案 0 :(得分:2)

你的问题很模糊,但我会尝试从尽可能多的角度解决它。

一:如果您检查btn.onclick并获取nullundefined的值,则这并不一定意味着该按钮没有点击处理程序。有两种方法可以向元素添加事件侦听器:

btn.onclick = function() { ... };
btn.addEventListener('click', function() { ... });

在后一种情况下,函数不会被分配给元素的onclick属性。 addEventListener实际上可用于向同一对象添加多个侦听器,所有这些侦听器都将在事件发生时触发。

二:按钮本身也可能根本没有任何点击处理程序。但是,如果它的任何祖先都这样做,那么当单击该按钮时也会触发这些处理程序。如果您想阅读它,则称为事件传播冒泡