在我目前正在编写的Thunderbird 68.5.0的插件中,对话框的事件处理程序ondialogaccept和ondialogcancel由于未知原因没有被触发。
在此处输入图像描述
单击示例对话框上的"陌生人"按钮时,会显示警报。但是,单击"接受"按钮或"取消"按钮,则不会发出任何警报。
刚刚编写的代码如下:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
<dialog id="sample" title="event handlers"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
buttons="accept,cancel"
ondialogaccept="window.alert('Hi!');return true;"
ondialogcancel="window.alert('Oops!');return true;"
>
<button label="strangers" onclick="window.alert('Yip Yip!');" />
</dialog>
// launcher.js
window.openDialog(
"chrome://myaddon/content/sample.xul",
"sampleDlg",
"resizable,chrome,modal,titlebar,centerscreen");
提前谢谢。
在TB68中,由于CSP,on…处理程序不再工作。在javascript中,您需要加载事件的侦听器。请参阅mozilla TB wiki中TB 60的更新信息和/或developer.threnbird.net 上的升级信息
克劳斯