Rule34 Favorite Button

Adds a more convenient favorite button to rule34.xxx

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

You will need to install an extension such as Tampermonkey to install this script.

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
// ==UserScript==
// @name         Rule34 Favorite Button
// @version      1.0
// @description  Adds a more convenient favorite button to rule34.xxx
// @author       littlesmella
// @namespace    littlesmella
// @match        https://rule34.xxx/index.php?page=post&s=view&id=*
// @license      MIT
// @grant        none
// ==/UserScript==

(() => {
    'use strict';

    function getIdFromUrl() {
        const searchParams = new URLSearchParams(window.location.search);
        const paramValue = searchParams.get('id');
        return paramValue;
    }

    const sidebar = document.querySelector('.postViewSidebarRight');
    if (sidebar) {
        const id = getIdFromUrl();
        const favButton = document.createElement('a');

        favButton.href = '#';
        favButton.textContent = "♥";
        favButton.setAttribute('onclick', `post_vote('${id}', 'up'); addFav('${id}'); return false;`);
        favButton.setAttribute('style', `font-size: 300px; text-align: center; display: block;`);

        sidebar.prepend(favButton);
        sidebar.setAttribute('class', `postViewSidebarRight verticalFlexWithMargins tag-type-artist`);
    } else {
        console.log('Sidebar not found');
    }
})();