登录 立即注册

首页 > 绿虎论坛 > 网页插件 (发帖)

标题: 网页插件:手动@ChatGPT

作者: @Ta

时间: 2023-03-17发布,2023-03-17修改

点击: 11958

导入网页插件:手动@ChatGPT(当前用户:6,总安装次数:13)
<script src="api.webplug-file.17813_public_at-chatgpt.js"></script>

以下代码和说明均由ChatGPT修改完成,插件开发原因:问问题手动输入@ 太麻烦,自动@ 又太占用资源,没有必要且不方便

效果展示

16790423183916.png(168.25 KB)

代码审查

function insertText(textarea, text) {
  const { selectionStart, selectionEnd, value } = textarea;

  if (document.selection) {
    const sel = document.selection.createRange();
    sel.text = text;
  } else if (typeof selectionStart === "number" && typeof selectionEnd === "number") {
    textarea.value = value.slice(0, selectionStart) + text + value.slice(selectionEnd);
    const cursorPos = selectionStart + text.length;
    textarea.selectionStart = textarea.selectionEnd = cursorPos;
  } else {
    textarea.value += text;
  }
}

$(document).ready(() => {
  const buttonHtml = `
    <p id="text-buttons">
      <button id="text1">Text1</button>
      <button id="text2">Text2</button>
      <button id="text3">Text3</button>
    </p>`;
  $("#content").after(buttonHtml);

  $("#text-buttons button").click((event) => {
    event.preventDefault(); // 阻止按钮的默认行为
    const text = $(event.target).text();
    insertText(document.getElementById("content"), text);
  });
});

说明文档

概述

该代码段是一个简单的基于 jQuery 的 JavaScript 应用程序,用于在 HTML 文档中的文本区域 (textarea) 中插入文本。当用户点击按钮时,相应的文本将插入到文本区域的当前光标位置。

函数:insertText(textarea, text)

这个函数用于将给定的文本插入到指定的文本区域 (textarea) 的当前光标位置。

参数:

  • textarea: 要插入文本的文本区域元素。
  • text: 要插入的文本。

功能说明:

  1. 获取文本区域的 selectionStartselectionEndvalue 属性。
  2. 如果 document.selection 存在,则创建一个文本范围并将文本插入到该范围。
  3. 如果 selectionStartselectionEnd 是数字类型,则将文本插入到当前选择的位置,并更新光标位置。
  4. 如果上述条件都不满足,则将文本追加到文本区域的末尾。

事件处理程序:$(document).ready()

当文档加载完成时,此事件处理程序将执行以下操作:

  1. 创建包含三个按钮的 HTML 字符串。
  2. 将按钮的 HTML 字符串插入到具有 id "content" 的元素之后。
  3. 为每个按钮添加单击事件处理程序。

事件处理程序:$("#text-buttons button").click()

此事件处理程序在用户点击按钮时执行以下操作:

  1. 阻止按钮的默认行为(如提交表单)。
  2. 获取被点击按钮上的文本。
  3. 调用 insertText() 函数将获取到的文本插入到具有 id "content" 的文本区域元素中。

[隐藏样式|查看源码]


『回复列表(7|隐藏机器人聊天)』

1.

@ChatGPT 4,4?

(/@Ta/2023-03-17 17:05//)

2.

[4] [新会话] @没落的情绪,It seems like your message is incomplete or unclear. Could you please provide more information or clarify your question so I can better assist you?

(/@Ta/2023-03-17 17:06//)

3.

@ChatGPT 4,挺好用啊

(/@Ta/2023-03-17 17:54//)

4.

[4] [新会话] @听风念,谢谢您的肯定!如果您有任何问题或需要帮助,请随时向我提问。我会竭诚为您提供服务。

(/@Ta/2023-03-17 17:54//)

5.
发言未通过审核,仅管理员和作者本人可见。
(/@Ta/2023-03-17 19:33//
未通过审核
)

6.
发言未通过审核,仅管理员和作者本人可见。
(/@Ta/2023-03-17 19:34//
未通过审核
)

7.
层主 @滑稽山脉 于 2023-07-04 13:55 删除了该楼层。
(/@Ta/2023-03-21 10:57//
被锁定
)

回复需要登录

11月14日 14:11 星期四

本站由hu60wap6华为CPU驱动

备案号: 京ICP备18041936号-1