【问题标题】:How to automatically click a confirm box?如何自动点击确认框?
【发布时间】:2021-01-30 11:42:38
【问题描述】:

我的脚本点击了网站上的图片。该图像有一个锚点href 和一个onclick href,但是onclick href 有一个确认框,一旦点击就会弹出。
onclick HTML 是:

onClick="this.href='link2';if (!confirm('Are you sure?')) { return false; }

如何让脚本在弹出的确认框中点击确定

我正在使用这个功能点击图片链接:

function click(elm) {
 var evt = document.createEvent('MouseEvents');
 evt.initMouseEvent('click', true, true, window, 0, 1, 1, 1, 1, false, false, false, false, 0, null);
 elm.dispatchEvent(evt);
}
click(picture element)

【问题讨论】:

  • 向我们展示您的脚本!所以我们可以帮助你
  • 链接到目标页面。这个问题目前太模糊,我们无法回答。
  • 不想用户确认时为什么要弹出确认框?

标签: javascript greasemonkey confirm


【解决方案1】:

您可以覆盖confirm 方法以暂时使其静音并返回true。下面的示例只会使确认对话框静音一次,并且仅在它被调用时。一旦静音对话框执行,它将恢复其原始功能,随后对 confirm 方法的调用将正常工作。

var realConfirm=window.confirm;
window.confirm=function(){
  window.confirm=realConfirm;
  return true;
};
click(picture element);

【讨论】:

  • 像魅力一样工作。你为我节省了很多精力。我没想到它可以被覆盖...
  • 您是否添加了这两行 var realConfirm=window.confirm;window.confirm=realConfirm; 以使其仅关闭一个警报/确认通知?因为只返回 true 到警报就可以正常工作并杀死所有未来的警报:alert = function () { return true; } 甚至像这样的一个衬垫 alert = true; 虽然一个衬垫给出错误 Uncaught TypeError: alert is not a function @Jay
猜你喜欢
  • 2014-07-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-12
  • 2017-10-02
相关资源
最近更新 更多