You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JavaScript调用已有的onclick函数

解决按钮点击事件调用失败的问题

你的代码无效是因为Shopify的按钮并非通过原生onclick属性绑定点击逻辑,而是用addEventListener添加的事件监听,所以直接调用onclick()不会触发对应的模态框逻辑。

试试用以下方法模拟真实点击:

// 获取所有目标按钮
const buttons = document.querySelectorAll(".shopify-buy__btn");
buttons.forEach(button => {
  // 触发原生点击事件,模拟用户真实点击
  button.dispatchEvent(new MouseEvent('click', {
    bubbles: true,
    cancelable: true,
    view: window
  }));
});

或者更简洁的方式,直接调用元素的原生click()方法(会触发所有绑定的点击事件):

const buttons = document.getElementsByClassName("shopify-buy__btn");
for (let i = 0; i < buttons.length; i++) {
  buttons[i].click();
}

关键说明

  • element.click()是浏览器提供的原生方法,会完整模拟用户点击行为,触发所有通过addEventListener或onclick绑定的事件。
  • 你之前的代码只检查了onclick属性,忽略了用事件监听绑定的逻辑,所以无法触发模态框。

内容的提问来源于stack exchange,提问作者Crelloc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 09:34:57