词典与词典软件制作规约

支持楼主的建议,词典越规范维护就越方便。
本人在测试楼主升级 GoldenDict WebEngine 期间收集了350+词典,遇到最多的问题就是全局 CSS & JS 对其它词典的干扰。切换到 GoldenDict WebEngine 版后按F12打开开发者工具快且对 CSS & JS 支持好了,但也看到很多JS错误与资源加载失败错误。

看 GoldenDict 刚嵌入 jquery 3.6.0 时以为是它版本过高导致的JS兼容问题还向楼主误反馈过,经过对比测试发现兼容性反而更好了,因为好多词典中的JS用到了 jquery 但没有带上它。@xiaoyifang 目前我自用的版本已经屏蔽了noConflict并定义自己的 $别名,还在试用中。
词典中JS另一个常见问题是注册全局事件与用 innerHTML 修改词典内容,导致一些怪问题。比如:
《海•词(豪华版)》中的js会为img标签注册error事件并尝试重新加载,导致开发者工具中看到大量重复的404
《辞海第七版》中的JS会在 document.ready 后修改body.innerHTML 内容,导致很多词典点标签切换没反应

CSS干扰问题在测试期间遇到的也多,主要是不同词典释义内容标签的 class 值重叠,而一些词典带的CSS太全就干扰了。由于测试词典多加上CSS干扰导致查词典结果后半部分排版基本都是乱的,目前只能把常用的词典放前面,空了花点时间修改CSS解决。

最后一个遇到较多的问题就是词典HTML内容不规范,很多标签没有关闭,尤其是 div 标签没有关闭导致后面的词典被干扰了。

1 个赞