javascript - 谷歌脚本 - 跟踪元素
问题描述
我有一个 .gs 文件,用于body.findText("mytext")
获取元素。这在用户单击按钮 1时运行。
对于我的 javascript,我返回一段 html,如下所示:
<button onclick="highlightText(`mytext`)">highlight</button>"
我们将此按钮称为 2。
单击按钮 2后,我将搜索第一次出现并mytext
突出显示它。
现在当用户开始编辑文档时就会出现问题。mytext
如果他在最初找到的那个之前添加另一个实例,那个实例将被突出显示。我想要的是我在单击按钮 1时发现的那个被突出显示。
无论文档如何更改,如何跟踪单击按钮 1时发现的确切元素?
我尝试过的:
- 序列化元素 (JSON.stringify),给出 {}。(希望有一个 UUID 左右的东西。)
- 根据索引跟踪,如果在此文本之前添加某些内容,则索引可能会更改。
- 只需再次搜索相同的文本,但如上所述,当用户再次添加相同的文本时会出现问题。
- 考虑在文档属性中存储引用,但我仍然需要序列化。
- 考虑使用我自己的 GUID 添加隐藏元素,但找不到方法。
解决方案
推荐阅读
- javascript - 事件“OnKeyDown”在反应应用程序中工作不正确
- javascript - Inquirer.js javascript 输入中的选项
- reactjs - React 组件不刷新
- reactjs - React Router V6 路由
- javascript - 从 CSV 中的十六进制代码创建位图图像
- android - Android缩放和旋转动画不流畅,跳跃
- python - 按行 ID 比较多个日期列并在 python 或 pandas 中突出显示它们
- excel - 从现有数据构建 UPC 代码 - 保留前导零并消除数字之间的空格
- windows - 使用控制台选项 False 运行 PyInstaller 时,可执行文件出现纸浆错误
- jenkins - Jenkins 管道以成功结束,但没有执行任何阶段