您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Focus to search or a certain text input with forward slash (/) key similar to YouTube.
当前为
// ==UserScript== // @name Focus Input Keybind // @namespace https://github.com/kittenparry/ // @version 1.1 // @description Focus to search or a certain text input with forward slash (/) key similar to YouTube. // @author kittenparry // @match *://*/* // @grant none // @license MIT License // ==/UserScript== /* LIST: * rarbg.to * reddit.com * twitch.tv * wiktionary.org */ /* CHANGELOG: * 1.1: +wiktionary.org * 1.0: initial */ check_focus_input_keybind = (e, val, special) => { var type = e.target.getAttribute('type'); var tag = e.target.tagName.toLowerCase(); if (type != 'text' && tag != 'textarea') { if (e.keyCode == 191) { // / if (special == 'reddit') { document.getElementById(val).firstChild.focus(); } else if (special == 'selector') { document.querySelector(val).focus(); } else { document.getElementById(val).focus(); } } } }; /* probably need a better way than simply .includes() * inid: id or other value of the input element * inspcl: when inid isn't an id (eg. a class) to specify it */ var current_url = window.location.href; if (current_url.includes('rarbg.to')) { var inid = 'searchinput'; } else if (current_url.includes('reddit.com')) { var inid = 'search'; var inspcl = 'reddit'; } else if (current_url.includes('twitch.tv')) { var inid = 'textarea[class="tw-block tw-border-radius-medium tw-font-size-6 tw-full-width tw-textarea tw-textarea--no-resize"]'; var inspcl = 'selector'; } else if (current_url.includes('wiktionary.org')) { var inid = 'searchInput'; } if (inid != undefined) { try { // pass an empty string for input special so to not repeat the event listener code similar to other script if (!inspcl) { var inspcl = ''; } // keyup instead of keydown to prevent the initial entry of a forward slash to input window.addEventListener('keyup', (e) => check_focus_input_keybind(e, inid, inspcl), false); } catch (e) {} }