您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Sets form's target to `_blank` when submitted via Ctrl + Left Mouse Button or Ctrl + Enter.
当前为
// ==UserScript== // @name Submit to Tab on Ctrl + Click / Enter // @description Sets form's target to `_blank` when submitted via Ctrl + Left Mouse Button or Ctrl + Enter. // @namespace http://eldar.cz/myf/ // @license CC0 // @version 2.0.0 // @grant none // @include * // ==/UserScript== const doc = document.documentElement; let isCtrlDown = false; let therForm = null; let origTarget = null; let shouldCleanUp = false; doc.addEventListener('keyup', keyup, true); doc.addEventListener('keydown', keydown, true); doc.addEventListener('submit', submit, true); window.addEventListener('blur', blur, true); function keyup(event){ console.log(event); if ( event.key === "Control" ) { cleanup(); } } function keydown(event){ if ( event.key === "Control" && !isCtrlDown) { console.log(event); isCtrlDown = true; } } function submit(event){ console.log(event); const tgt = event.target; if(isCtrlDown && !shouldCleanUp) { therForm = tgt; origTarget = therForm.target; therForm.target = '_blank'; shouldCleanUp = true; } } function blur(event) { console.log(event); cleanup() } function cleanup(){ if(shouldCleanUp) { console.log('cleanup'); therForm.target = origTarget; isCtrlDown = false; therForm = null; origTarget = null; shouldCleanUp = false; } }