您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
chatgpt发送前自动复制输入框内容到剪切板
- // ==UserScript==
- // @name copy-chatgpt-input
- // @namespace http://tampermonkey.net/
- // @version 2024-02-20
- // @description chatgpt发送前自动复制输入框内容到剪切板
- // @author SeekingLight233
- // @match https://chat.openai.com
- // @icon https://www.google.com/s2/favicons?sz=64&domain=openai.com
- // @grant none
- // @license MIT
- // ==/UserScript==
- (function () {
- 'use strict';
- main()
- let copyTmp = "";
- function main() {
- console.log("init copy-input");
- const sendBtn = getSendBtn();
- const textAreaNode = getTextAreaNode();
- textAreaNode.addEventListener("input", (e) => {
- const val = e.target.value;
- copyTmp = val;
- })
- document.body.addEventListener("click", (event) => {
- const sendBtn = event.target.closest('[data-testid="send-button"]');
- if (sendBtn) {
- copyValue(copyTmp);
- }
- });
- document.addEventListener("keydown", function (event) {
- if ((event.metaKey || event.ctrlKey) && event.key === "Enter") {
- copyValue(copyTmp)
- }
- })
- }
- function copyValue(value) {
- navigator.clipboard.writeText(value).then(() => {
- // console.log('copy input:', value);
- }).catch(err => {
- // console.error('copy failed', err);
- });
- }
- function getTextAreaNode() {
- return document.getElementsByTagName("textarea")?.[0];
- }
- function getTextAreaValue() {
- const node = getTextAreaNode();
- return node?.value ?? ""
- }
- function getSendBtn() {
- const textAreaNode = getTextAreaNode();
- const pNode = textAreaNode.parentElement;
- const sendBtn = pNode.querySelector('[data-testid="send-button"]');
- return sendBtn;
- }
- })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址