我试图用.click()
点击中等拍手按钮。
以下是我尝试的内容:
在a medium post上,我运行let btn = document.getElementsByClassName('clapButton')[0];
以获取拍手按钮,然后运行btn.click();
。
检查按钮后,它没有onclick事件,因此我不确定我是否收到了错误的元素,或者是否有其他触发方式它
是否有一些jquery代码或某些事件以不同的方式将事件附加到按钮?谢谢!
很抱歉错过了详细信息,我试图通过firefox扩展程序运行代码。代码也没有通过firefox开发人员的控制台工作(我运行上面的代码)。我不确定为什么它似乎适用于Chrome就好了。
答案 0 :(得分:2)
你的问题很模糊,但我会尝试从尽可能多的角度解决它。
一:如果您检查btn.onclick
并获取null
或undefined
的值,则这并不一定意味着该按钮没有点击处理程序。有两种方法可以向元素添加事件侦听器:
btn.onclick = function() { ... };
btn.addEventListener('click', function() { ... });
在后一种情况下,函数不会被分配给元素的onclick
属性。 addEventListener
实际上可用于向同一对象添加多个侦听器,所有这些侦听器都将在事件发生时触发。
二:按钮本身也可能根本没有任何点击处理程序。但是,如果它的任何祖先都这样做,那么当单击该按钮时也会触发这些处理程序。如果您想阅读它,则称为事件传播或冒泡。