您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds some helpful features to the website.
// ==UserScript== // @name Better g-teacher // @namespace http://tampermonkey.net/ // @version 2024-09-26 // @description Adds some helpful features to the website. // @author Msix29 // @match https://g-teacher.com/courses/*/* // @icon https://www.google.com/s2/favicons?sz=64&domain=g-teacher.com // @license MIT // @grant none // ==/UserScript== (function () { 'use strict'; document.querySelector("#tutor-page-wrap .tutor-course-topic > .is-active")?.click(); const today = new Date(); const dd = String(today.getDate()).padStart(2, "0"); const mm = String(today.getMonth() + 1).padStart(2, "0"); // January is 0 const yyyy = today.getFullYear(); const currentDate = `${dd}-${mm}-${yyyy}`; function parseDate(dateString) { const [day, month, year] = dateString.split("-").map(Number); return new Date(year, month - 1, day); } const titles = document.querySelectorAll(".tutor-course-single-sidebar-wrapper .tutor-accordion-item-header .tutor-course-topic-title"); let closestBefore = null; let closestBeforeDate = null; let foundExact = false; for (let i = 0; i < titles.length; i++) { const title = titles[i]; const text = title.textContent.trim(); const match = text.match(/(\d{2})-(\d{2})-(\d{4})/); if (match) { const dateText = match[0]; const date = parseDate(dateText); if (dateText === currentDate) { title.scrollIntoView({ behavior: "smooth", block: "center" }); title.click(); break; } else if (date < today) { closestBeforeDate = date; closestBefore = title; } else { closestBefore.scrollIntoView({ behavior: "smooth", block: "center" }); closestBefore.click(); break; } } } })();