V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Akasashic
V2EX  ›  JavaScript

请教一个识别课程并归类的 JS 脚本执行不了的问题。

  •  1
     
  •   Akasashic · 46 天前 · 928 次点击
    这是一个创建于 46 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我用油猴整了个脚本用来读网课的视频按钮位置,网课需要在一级页面点进班级选课程。
    这段过滤器和遍历的代码在课程列表出现浏览器点进审查元素再到控制台执行有效果。
    在课程列表出现前进审查元素进控制台,再点到课程列表,直接在控制台执行就 0 数据。
    油猴的脚本自动重复执行不管进不进审查元素一直都是 0 数据,用按钮手动触发也是 0 数据,最后我直接用标题文字去匹配不用筛选也不行,等 dom 加载完也没用

    测试用的代码如下:
    // 定义一个数组用于存储视频信息
    const videoStatusList = [];

    // 遍历每个 courseware-list 的 li 元素
    document.querySelectorAll('.courseware-list li').forEach((item, index) => {
    let videoTitle = item.querySelector('span').getAttribute('title') || '无标题';
    let status;

    // 根据 class 设置视频状态
    if (item.querySelector('.iconfont.complete')) {
    status = '已观看';
    } else if (item.querySelector('.state')) {
    status = '正在观看';
    } else {
    status = '未观看';
    }

    // 将视频信息存入数组
    videoStatusList.push({
    title: videoTitle,
    position: index + 1, // 使用 index + 1 表示位置
    status: status
    });
    });

    // 输出结果到控制台
    console.log('视频观看状态:', videoStatusList);
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   836 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 20:47 · PVG 04:47 · LAX 12:47 · JFK 15:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.