我的Firefox扩展程序会在每个页面中动态添加用户名/密码字段。问题是它不记得我通常做的输入。为什么会这样?
答案 0 :(得分:0)
查看nsLoginManager.js时,表单通常在DOMContentLoaded
事件触发时填充(请参阅_fillDocument()
调用)。根据我的理解,在事件处理完毕后插入元素,以便不再恢复它们的值。您可以明确地调用nsILoginManager.fillForm()但是在更改表单后恢复字段值:
Components.classes["@mozilla.org/login-manager;1"]
.getService(Components.interfaces.nsILoginManager)
.fillForm(form);
这应该足够了,从代码来看似乎不需要id
属性。