【发布时间】:2019-09-21 03:11:57
【问题描述】:
使用此代码,我想为 chrome 存储更新时创建一个事件侦听器。
我希望在触发事件侦听器时发生两件事:
- 代码将控制台记录更新的值。这部分有效。
- 我希望扩展的 HTML(单击图标时在角落打开的文档)更新和呈现 chrome 存储中的数据值。这是我需要帮助的部分。
chrome.storage.onChanged.addListener(function(changes, namespace) {
//part 1
console.log('New data type is %s. New value is %s',
changes['type'].newValue, changes['data'].newValue)
//part 2
document.getElementById('output').innerHTML =
changes['data'].newValue
});
我意识到在函数内部调用“document”没有意义,但我不确定如何继续让它在扩展的 HTML 中呈现。
我尝试为访问上下文菜单时创建一个事件侦听器(用户可以更新 chrome 存储,但单击上下文菜单中的按钮),但我无法让它工作。此外,该事件应在 chrome 存储更新时触发,而不是在简单访问上下文菜单时触发。
现在我收到此错误: 事件处理程序中的错误:TypeError:无法设置属性 'innerHTML' of null
(有一个 id 为“输出”的元素,所以这不是问题)
感谢您的帮助!
【问题讨论】:
标签: google-chrome google-chrome-extension event-listener google-chrome-storage