doSomethingFunc
当 afterPrint 发生时,我需要执行。我的代码在所有浏览器上运行良好,除了当前的 Safari 版本(OSX 上的 Safari 10.1 和 iOS 10.3 上的 Safari 浏览器)。这两个浏览器似乎没有调用事件侦听器(至少用于打印)。
const mediaQueryPrint = window.matchMedia('print');
mediaQueryPrint.addListener((mql) => {
if (!mql.matches) {
setImmediate(doSomethingFunc);
}
});
window.print();
上面的代码与 OSX Safari 9.1.2 和 iOS 10.2 的 Safari 完美配合。但不适用于当前版本。
有人注意到类似的事情吗?还是我必须针对当前的 Safari 版本改进我的代码?
我的猜测是,这是一个 Safari 错误,因为在 Safari 10.1更改日志章节可访问性中有相应的注释。