如何写一个通用的.js替换GoldenDict查词结果中特定字符(串)?

场景:使用GoldenDict查词时,遇到一些小问题,例如:apostrophe符号不统一 (can’t,person’s)或者某些从“出版社”遗留下来的英文拼写错误,或者汉字用字错误,等等,又不能或者不想要修改.mdx文件。

解决办法:这个可以通过.js替换GoldenDict查词结果中特定的字符(串)。这里有个例子:OALD10 中文翻译修正 (翻译问题反馈) - #91,来自 leon406

现在请高手看能不能有个通用的.js可以从一个简单的文本文件txt中读取需要被替换的字符(串) 和 要替换成的新字符(串),从而获得完美的查词结果。

没什么用,影响使用体验。词典结构复杂,替换很可能出现错漏,而且这个过程发生在所有词典加载完成之后,词典越多就越卡,论坛里有词典就这么干的,词典多了能卡的词典软件无响应。

有道理,不过如果只是进行简单的替换还是可以的。

请教一下,我想在一本词典的js. 和css都执行完了后,进行替换,但是下面的代码是只替换.mdx里面原来的text,而忽略所有后来js. 和css加的东西。 有什么办法获得词典最终显示的html吗?

document.body.innerHTML

不看代码不知道具体原因。如果太复杂了,也别给我看了,搞不定!只能猜测下,很多词典直接用的 setTimeout 加时间执行,这个时间你获取不到的,保证不了脚本已执行完。如果你 100% 确认脚本已执行完,你自己也 setTimeout 后在里面获取 document.body.innerHTML

谢谢。这是测试的mdx. 就一个单词:replaceme

replaceme.mdx.zip (1.3 KB)

这个就是 innerHTML 的问题,内容替换不会立即执行。之前有回复过: