控制台可以运行,实际页面不能运行
我写了一个关于培训的小脚本自己用。借助chatgpt的指导总算是勉强能跑起来了。在控制台测试可以,但是奇怪弄成油猴脚本后就不能正常使用,是无效的。希望大佬们帮我找找原因。不胜感激。
// 当前页面的起始ID
var currentId = 1240;
// 最大ID
var maxId = 1285;
// 检查下一个页面是否存在
function checkNextPage() {
// 增加ID
currentId++;
// 检查是否达到最大ID
if (currentId > maxId) {
console.log("已达到最大ID,无法继续跳转。");
return;
}
// 构建下一个页面的URL
var nextPageUrl = "https://www.fjhszpx.com/fjhszpx/site/VodAction!showMain.action?refCourseVod.id=" + currentId;
// 发送请求,检查下一个页面是否存在
var xhr = new XMLHttpRequest();
xhr.open("HEAD", nextPageUrl);
xhr.onreadystatechange = function () {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
// 跳转到下一个页面
window.location.href = nextPageUrl;
} else {
// 下一个页面不存在,继续检查下一个页面
checkNextPage();
}
}
};
xhr.send();
}
var video = document.querySelector('video'); // 获取第一个符合选择器的视频元素
if (video) {
video.muted = true;
// 监听视频播放结束事件
video.addEventListener('ended', function () {
// 暂停视频播放
video.pause();
```text
// 检查下一个页面是否存在并进行跳转
checkNextPage();
```
});
} 前面是
// ==UserScript==
// @name 人人急救培训
// @namespace 00
// @version 0.1
// @descriptiontry to take over the world!
// @author You
// @match https://www.fjhszpx.com/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=fjhszpx.com
// @grant GM_xmlhttpRequest
// ==/UserScript==
不知道为什么刚才发不出来 是不是video元素还没加载出来,打印一下看看
要不使用万能的setTimeout 楼上说的对
多半是video元素没找到
参考
https://learn.scriptcat.org/docs/question/%E5%B8%B8%E8%A7%81%E8%AF%AF%E5%8C%BA/
另外脚本推荐放到https://scriptcat.org/search然后提供脚本地址来提问 李恒道 发表于 2023-6-4 17:43
楼上说的对
多半是video元素没找到
参考
人人急救培训
https://scriptcat.org/script-show-page/1061 本帖最后由 thediy 于 2023-6-4 18:39 编辑
已经可以了,修改掉账号密码. thediy 发表于 2023-6-4 18:19
人人急救培训
https://scriptcat.org/script-show-page/1061
然后贴以下你的脚本报错看看 直接setTimeout 李恒道 发表于 2023-6-4 18:22
然后贴以下你的脚本报错看看
没有报错啊. 就是没反应,无效.
我没有找到video的id, 试了class也不行.
水平有限,不会找{:4_115:} thediy 发表于 2023-6-4 18:21
各位大佬,脚本已提交,帮我看一下.这个培训各中小学都有.如果成功了我也能为大家做一点微小贡献.
网址是htt ...
大家说的一直都是对的
没找到video元素
你先思考我们说的话
不要着急解决问题
![图片.png](data/attachment/forum/202306/04/183213v33h4c53yeb4cehs.png)
页:
[1]
2