dongfan 发表于 2023-4-4 13:23:46

请问网页的alert弹窗如何自动点击

请问一下,高手,我发现一个网站,过段时间就会弹出一个alert弹窗,需要手动点击确定按钮,才会播放视频,而我发现这个网站是一个框架网站,而且子框架中还嵌有iframe框架,请问如何定时点击alert弹窗关闭,另外,请问下如何切换浏览器控制台显示的这个框架啊?

李恒道 发表于 2023-4-4 13:34:27

alert=()=>true
直接对调用进行hook
切换作用域参考https://bbs.tampermonkey.net.cn/thread-274-1-1.html

dongfan 发表于 2023-4-4 13:41:29

李恒道 发表于 2023-4-4 13:34
alert=()=>true
直接对调用进行hook
切换作用域参考https://bbs.tampermonkey.net.cn/thread-274-1-1.html ...

请问这样写的吗?
我以前是在这油猴中这样写的,但是一样弹窗跳出来


// ==/UserScript==

console.log('监测开始……')
var i=0;
setInterval(function () {
      // 跳过20分钟休息的提示,继续学习,60秒刷一次
    console.log('监测中……')
          skip();
    console.log((i++)+new Date());
    }, 60*1000);

function skip(){
    window.alert = function(s) {
      console.log(s);
    }
}

dongfan 发表于 2023-4-4 13:42:56

![微信截图_20230404134147.png](data/attachment/forum/202304/04/134213o9b66z6o6j4601a1.png)

我以前就写这几行代码,也一样弹出弹窗啊

李恒道 发表于 2023-4-4 14:05:21

dongfan 发表于 2023-4-4 13:41
请问这样写的吗?
我以前是在这油猴中这样写的,但是一样弹窗跳出来



在对方调用之前劫持才好使

李恒道 发表于 2023-4-4 14:07:36

dongfan 发表于 2023-4-4 13:42
![微信截图_20230404134147.png](data/attachment/forum/202304/04/134213o9b66z6o6j4601a1.png)

我以 ...

你没理解alert
alert在浏览器属于模态对话框(Modal Dialogue Box)
在弹出之后js完全暂停掉了等待响应
这个时候你写任何代码都是无效的

dongfan 发表于 2023-4-6 10:51:22

李恒道 发表于 2023-4-4 14:07
你没理解alert
alert在浏览器属于模态对话框(Modal Dialogue Box)
在弹出之后js完全暂停掉了等待响应


对不起,确实没有弄明白啊,你说的,到底该如何写,才能实现自动点击关闭alert弹窗啊?

李恒道 发表于 2023-4-6 11:55:55

dongfan 发表于 2023-4-6 10:51
对不起,确实没有弄明白啊,你说的,到底该如何写,才能实现自动点击关闭alert弹窗啊?
...

不能实现点击关闭alert弹窗
弹窗在启动的时候已经阻断所有js代码了
唯一能做的就是在调用alert之前做拦截直接返回
或者可以用其他语言来控制浏览器做点击

wencaizhang 发表于 2023-4-13 09:35:46

感觉可以通过重写 alert 方法来实现

```js
// ==UserScript==
// @name         重写 alert
// @namespace    http://tampermonkey.net/
// @version      0.1
// @descriptiontry to take over the world!
// @author       You
// @match      https://**/*
// @run-at       document-start
// ==/UserScript==

(function() {
'use strict';

window.alert = function() {
    console.log('alert')
    // do somethin
}
})();
```
页: [1]
查看完整版本: 请问网页的alert弹窗如何自动点击