Gelbooru Favorite Shortcut

Adds a keybind shortcut for adding images to favorites on Gelbooru.com

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         Gelbooru Favorite Shortcut
// @namespace    http://tampermonkey.net/
// @license MIT
// @version      0.1
// @description  Adds a keybind shortcut for adding images to favorites on Gelbooru.com
// @author       YourName
// @match        https://gelbooru.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Define the keybind shortcut (you can change this to your preference)
    const shortcutKey = 'f';

    // Function to add an image to favorites
    function addToFavorites() {
        // Identify the anchor element that corresponds to "Add to favorites" and trigger a click event
        const addToFavoritesButton = document.querySelector("a[onclick*='addFav']");
        if (addToFavoritesButton) {
            addToFavoritesButton.click();
        }
    }

    // Listen for keydown events
    document.addEventListener('keydown', function(event) {
        // Check if the pressed key matches the shortcut key and if an input field is not focused
        if (event.key === shortcutKey && document.activeElement.tagName !== 'INPUT') {
            // Prevent default browser behavior for this key
            event.preventDefault();
            // Add the image to favorites
            addToFavorites();
        }
    });
})();