上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖

视频播放完后不执行点击动作

[复制链接]
  • TA的每日心情
    无聊
    2022-9-27 16:33
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    4

    主题

    4

    回帖

    16

    积分

    助理工程师

    积分
    16
    发表于 2022-4-22 09:10:35 | 显示全部楼层 | 阅读模式
    悬赏1油猫币已解决
    1. // ==UserScript==
    2. // @name         New Userscript
    3. // @namespace    http://tampermonkey.net/
    4. // @version      0.1
    5. // @description  try to take over the world!
    6. // @author       You
    7. // @match        http://202.204.52.57/jjfz/lesson/*
    8. // @icon         https://www.google.com/s2/favicons?sz=64&domain=52.57
    9. // @grant        unsafeWindow
    10. // ==/UserScript==

    11. (function() {
    12.     'use strict';

    13.     var btn = document.querySelector('.public_submit');//这个视频开始前的弹窗
    14.     if(btn)
    15.     {
    16.             btn.click();
    17.     }
    18.     else
    19.     {
    20.         var target_a; //找到第一个还没有看的视频【a不是红色的】
    21.         var as = document.getElementsByTagName("a");
    22.         var i;
    23.         for (i = 0; i < as.length; i++)
    24.         {
    25.             if (as[i].className == "" && as[i].style.color == "")
    26.             {
    27.                 target_a = as[i];
    28.                 break;
    29.             }
    30.         }

    31.     }

    32.     target_a.click();
    33.     var elevideo = document.getElementsByTagName("video")[0];
    34.     elevideo.addEventListener('ended', function ()
    35.     { //结束
    36. var sbtn = document.querySelector('.public_submit');// 视频结束的弹窗
    37.         if(sbtn)
    38.         {
    39.             sbtn.click();
    40.         }

    41.     }, false);
    复制代码
    视频结束的弹窗不能自动点击,这个弹窗是由界面script生成的,不知道和这个有没有关系,

    视频播放结束后,浏览器的开发者工具截图
    捕获.PNG

    最佳答案

    查看完整内容

    var elevideo = document.getElementsByTagName("video")[0]; elevideo.addEventListener('ended', function () { //结束 var sbtn = document.querySelector('.public_submit');// 视频结束的弹窗 if(sbtn) { sbtn.click(); } }, false); 这里打个debugger追一下吧 可能ended的时候dialog还没生成 加个settimeout或者mutationobserve看看 ...
  • TA的每日心情
    慵懒
    2024-10-28 07:07
  • 签到天数: 193 天

    [LV.7]常住居民III

    712

    主题

    5961

    回帖

    6760

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    6760

    荣誉开发者喜迎中秋油中2周年生态建设者

    发表于 2022-4-22 09:10:36 | 显示全部楼层
        var elevideo = document.getElementsByTagName("video")[0];
        elevideo.addEventListener('ended', function ()
        { //结束
    var sbtn = document.querySelector('.public_submit');// 视频结束的弹窗
            if(sbtn)
            {
                sbtn.click();
            }

        }, false);
    这里打个debugger追一下吧
    可能ended的时候dialog还没生成
    加个settimeout或者mutationobserve看看
    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
    回复

    使用道具 举报

    发表回复

    本版积分规则

    快速回复 返回顶部 返回列表