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

纯小白入不了门,求带进坑。控制台能运行,存成脚本就...

[复制链接]

该用户从未签到

1

主题

3

回帖

6

积分

助理工程师

积分
6
发表于 2021-12-17 21:59:18 | 显示全部楼层 | 阅读模式
悬赏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://eel2.youmoo.cn/*
  8. // @icon         https://www.google.com/s2/favicons?domain=youmoo.cn
  9. // @grant        none
  10. // ==/UserScript==

  11. (function foo() {
  12.     if(document.querySelector('video').paused){
  13.     document.querySelector('video').play()
  14.   }else{
  15.       setTimeout(foo, 1000)
  16.   }
  17. })();
复制代码

就是想做个监测视频,只要暂停了就让播放的功能。。

最佳答案

查看完整内容

你那个网站我进不去, 我以B站为例子每一秒检测一次 检测到暂停后自动播放
  • TA的每日心情
    奋斗
    2023-7-6 11:14
  • 签到天数: 253 天

    [LV.8]以坛为家I

    41

    主题

    318

    回帖

    2178

    积分

    荣誉开发者

    累计点滴改进,迈向完美品质。

    积分
    2178

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

    发表于 2021-12-17 21:59:19 | 显示全部楼层
    本帖最后由 Hangover 于 2021-12-17 22:38 编辑
    molor 发表于 2021-12-17 22:09
    这个是防暂停部分的调试过程,似乎没问题,等大神来之前再试试循环的部分。。 ...

    你那个网站我进不去, 我以B站为例子每一秒检测一次 检测到暂停后自动播放
    1. // ==UserScript==
    2. // @name         New Userscript
    3. // @namespace    https://bbs.tampermonkey.net.cn/
    4. // @version      0.1.0
    5. // @description  try to take over the world!
    6. // @author       You
    7. // @match        https://www.bilibili.com/video/*
    8. // ==/UserScript==

    9. (function () {
    10.     'use strict';
    11.     var video = document.querySelector('video');
    12.     setInterval(() => {
    13.         if (video.paused) {
    14.             video.play();
    15.         }
    16.     }, 1000);
    17. })();
    复制代码


    已有1人评分好评 贡献 理由
    王一之 + 1 + 1 ggnb!

    查看全部评分 总评分:好评 +1  贡献 +1 

    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    3

    回帖

    6

    积分

    助理工程师

    积分
    6
    发表于 2021-12-17 22:09:30 | 显示全部楼层
    1. if(document.querySelector('video').paused){
    2.     document.querySelector('video').play()
    3.   }else{
    4.       alert="ok"
    5.   }
    6. Promise {<pending>}
    7. if(document.querySelector('video').paused){
    8.     document.querySelector('video').play()
    9.   }else{
    10.       alert="ok"
    11.   }
    12. 'ok'
    复制代码


    这个是防暂停部分的调试过程,似乎没问题,等大神来之前再试试循环的部分。。
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-10-28 07:07
  • 签到天数: 193 天

    [LV.7]常住居民III

    712

    主题

    5959

    回帖

    6758

    积分

    管理员

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

    积分
    6758

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

    发表于 2021-12-18 10:14:48 | 显示全部楼层
    这个可以参考脚本调试那节,一步一步跟一下,看看出什么问题了
    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

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

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-7-6 11:14
  • 签到天数: 253 天

    [LV.8]以坛为家I

    41

    主题

    318

    回帖

    2178

    积分

    荣誉开发者

    累计点滴改进,迈向完美品质。

    积分
    2178

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

    发表于 2021-12-18 10:39:30 | 显示全部楼层
    1. var video = document.querySelector('video');
    2.     setInterval(() => {
    3.         if (video.ended) {
    4.             //写自动播放下一个视频的代码
    5.             console.log(video.ended); //ture
    6.         } else if (video.paused) {
    7.             video.play();
    8.         }
    9.     }, 3000);
    复制代码
    逻辑应该没问题,剩下的哥哥自己写写...

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-10-28 07:07
  • 签到天数: 193 天

    [LV.7]常住居民III

    712

    主题

    5959

    回帖

    6758

    积分

    管理员

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

    积分
    6758

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

    发表于 2021-12-18 11:03:50 | 显示全部楼层
    Hangover 发表于 2021-12-18 10:39
    逻辑应该没问题,剩下的哥哥自己写写...

    我也感觉逻辑没问题的
    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

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

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-7-6 11:14
  • 签到天数: 253 天

    [LV.8]以坛为家I

    41

    主题

    318

    回帖

    2178

    积分

    荣誉开发者

    累计点滴改进,迈向完美品质。

    积分
    2178

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

    发表于 2021-12-18 11:06:50 | 显示全部楼层
    李恒道 发表于 2021-12-18 11:03
    我也感觉逻辑没问题的

    但我感觉用addEventListener监听状态会更好,定时器会给浏览器增加负担
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-7-6 11:14
  • 签到天数: 253 天

    [LV.8]以坛为家I

    41

    主题

    318

    回帖

    2178

    积分

    荣誉开发者

    累计点滴改进,迈向完美品质。

    积分
    2178

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

    发表于 2021-12-18 12:00:19 | 显示全部楼层
    本帖最后由 Hangover 于 2021-12-18 12:51 编辑

    addEventListener监听元素状态变化会更温和点,测试也能达到同样的效果

    1. // ==UserScript==
    2. // @name         New Userscript
    3. // @namespace    https://bbs.tampermonkey.net.cn/
    4. // @version      0.1.0
    5. // @description  try to take over the world!
    6. // @author       You
    7. // @run-at       document-end
    8. // @match        https://www.bilibili.com/video/*
    9. // ==/UserScript==

    10. (function () {
    11.     'use strict';
    12.     var video = document.querySelector('video');
    13.     //loadedmetadata 事件在指定视频/音频的元数据加载后触发
    14.     video.addEventListener('loadedmetadata', () => {
    15.         setTimeout(() => {
    16.             video.play();
    17.             console.log('开始播放了!');
    18.         }, 3000); //3秒后自动播放
    19.     });
    20.     video.addEventListener('pause', () => {
    21.         if (video.ended) {
    22.             //写自动播放下一个视频的代码
    23.             console.log('播放完了!');
    24.         } else if (video.paused) {
    25.             video.play();
    26.             console.log('暂停后继续播放!');
    27.         }
    28.     });

    29.     /* setInterval(() => {
    30.         if (video.ended) {
    31.             //写自动播放下一个视频的代码
    32.             console.log(video.ended); //ture
    33.         } else if (video.paused) {
    34.             video.play();
    35.         }
    36.     }, 3000); */
    37. })();
    复制代码


    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    3

    回帖

    6

    积分

    助理工程师

    积分
    6
    发表于 2021-12-18 19:48:34 | 显示全部楼层
    非常感谢,思路有了,甚至伸手要到了现成代码,我马上试试。
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    3

    回帖

    6

    积分

    助理工程师

    积分
    6
    发表于 2021-12-18 19:55:44 | 显示全部楼层
    Hangover 发表于 2021-12-17 21:59
    你那个网站我进不去, 我以B站为例子每一秒检测一次 检测到暂停后自动播放

    伸手使我愧疚,完美运行,我继续看索引学习Promise判定去了。。非常感谢!
    回复

    使用道具 举报

    发表回复

    本版积分规则

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