如果底层标记更改,确保我的Google Chrome浏览器扩展DOM逻辑不会中断的最佳做法是什么?
问题描述:
我正在构建我的第一个Google Chrome扩展。如果底层标记更改,确保我的Google Chrome浏览器扩展DOM逻辑不会中断的最佳做法是什么?
它会改变我不控制的网站页面的DOM。
本质上,它会在表单中添加一个新的输入字段并拦截表单提交以将添加的字段存储在我自己的数据库中。
要在正确的位置添加字段,我将使用jQuery,但是我担心如果网站的所有者决定更改标记/ DOM,我的逻辑将会中断。
人们如何使他们的DOM变异逻辑尽可能健壮?
感谢
答
在一般情况下,你不能让它强大的通过只是遵循一些步骤,每个页面和HTML是独一无二的。然而,你至少可以在你的代码中有一个警告系统,当它发现错误时(意外的同级,不能找到一个元素等),它会向你的后端发送日志。那么你的后端可以提醒你,让你立即修复它。有些网站可能会迁移到新版本或进行A/B测试,因此您还需要注意或多个网站版本。
此外,研究如何更快速地部署扩展uptate。您可以检测到有新版本并询问/强制用户重新启动。