【问题标题】:Creating a tooltip on word(s) in a text editor (Google Docs) using JavaScript/CSS使用 JavaScript/CSS 在文本编辑器 (Google Docs) 中创建关于单词的工具提示
【发布时间】:2021-10-20 16:01:40
【问题描述】:

简介: 我正在使用 Google Docs,并且一直在尝试(并且正在努力)创建一个工具提示,在单击按钮后会在选定的(用光标突出显示的)单词上弹出,目的是为学习创建笔记。

例如,如果我有“动态编程”这个词,并且我想将它的定义添加到“动态编程”的实例中,这样当我悬停/单击它时,定义就会出现,我不会'不必经常滚动或按 CTRL+F 。

我的问题是是否有关于如何将工具提示附加到所选文本的建议。我正在考虑创建一个class="tooltip" 并更改内部 HTML 以使用 xpath 选择包含此类,但我正在努力将这个想法落实到位。对于如何解决这个问题有什么建议吗?

我尝试使用Document.ExecCommand() 更改所选文本,例如将其加粗,但没有结果。我看到这个命令已被弃用,但我不确定我还能用什么代替它。我想用insertHTML()

到目前为止我的代码:

我目前能够获取用户的文本选择(以附加工具提示),尽管它不能完全按计划工作。即使您只选择一个单词,它也会返回整行。

function createPopup(text) {

  var text = [];
  var selection = DocumentApp.getActiveDocument().getSelection().getSelectedElements(); 

  if (selection) {
    for (var i = 0; i < selection.length; i++) {
      text.push(selection[i].getElement().asText().getText());
    }

  DocumentApp.getUi().alert(text);

  }    
}

【问题讨论】:

  • 我认为这是不可能的。您是否有可以执行此操作的文档或附加组件的示例?
  • @RafaGuillermo 我想做一些类似于在突出显示目标文本后单击超链接按钮时出现的弹出窗口。它将所选文本变为蓝色,并出现一个弹出窗口。

标签: javascript google-apps-script google-docs google-docs-api


【解决方案1】:

答案:

很遗憾,这是不可能的。

更多信息:

类似工具提示的弹出窗口显示超链接(例如这个)不可自定义,也不是 Google 表格当前的一项功能。

解决方法:

您可以在单元格上使用 cmets,其作用类似于这些工具提示:将鼠标悬停在单元格上将显示如下注释:

功能要求:

或者,如果您想要比 cell cmets 更可定制的东西,我建议您向 Google 提交功能请求并附上详细信息。

您可以在 Google 表格 UI 中按照Help &gt; Help Sheets improve 菜单项执行此操作。

还有一个功能请求here,其中详细说明了能够直接从 Google Apps 脚本添加和操作 cmets,因此在问题中添加星号以提高其可见性。

【讨论】:

    猜你喜欢
    • 2020-07-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多