我有一个生成动态toolbarbutton
和menuitem
元素的工具栏扩展。这些项目通常是这样构造的:
tempMenuItem = document.createElement("menuitem");
tempMenuItem.setAttribute("label", "Some Label");
tempMenuItem.setAttribute("tooltiptext", "Some Tooltip");
tempMenuItem.setAttribute("oncommand", "myObject.someFunction()");
这段代码工作得很好,但是当我将我的扩展提交到官方附加存储库时,我收到以下警告:
使用 setAttribute 设置 on* 属性
警告:为防止漏洞,应始终使用 addEventListener 定义事件处理程序(如“onclick”和“onhover”)。
我还能如何为这些动态元素设置适当的命令处理程序?我知道这只是一个警告,但作为我这样的强迫症程序员,我想以最干净的方式做事。有一个更好的方法吗?