Greasy Fork

Bilibili 哔哩哔哩阻止动态点击正文跳转

阻止动态点击正文跳转动态页面(可通过点击动态发布时间打开)

当前为 2021-12-11 提交的版本,查看 最新版本

// ==UserScript==
// @name         Bilibili 哔哩哔哩阻止动态点击正文跳转
// @icon         https://t.bilibili.com/favicon.ico
// @namespace    https://lolicon.app/
// @version      1.0.2
// @description  阻止动态点击正文跳转动态页面(可通过点击动态发布时间打开)
// @author       Jindai Kirin
// @match        https://t.bilibili.com/*
// @match        https://space.bilibili.com/*
// @license      MIT
// @grant        GM_addStyle
// ==/UserScript==

(function () {
    'use strict';

    GM_addStyle('.description.active{cursor:unset!important}');

    const contentClassList = ['content-full', 'content-ellipsis', 'content', 'dynamic-link-hover-bg'];

    /**
     * @param {HTMLElement} element
     * @param {string} className
     */
    const hasClass = (element, className) => element.classList.contains(className);

    /**
     * @param {HTMLElement} element
     */
    const isContentElement = element => contentClassList.some(className => hasClass(element, className));

    document.addEventListener(
        'click',
        e => {
            /** @type {HTMLElement} */
            const $el = e.target;
            if (isContentElement($el) || isContentElement(e.composedPath()[1])) {
                e.stopPropagation();
            }
        },
        { capture: true }
    );
})();