我在IE 11上尝试这个,但它不起作用。有人能解释我为什么吗?我在其他帖子上找不到任何答案。
var navigatorMsSave = window.navigator.msSaveOrOpenBlob;
navigatorMsSave(new Blob([blob], {type: "application/pdf"}), "File.pdf");
错误代码:无效的调用对象
我的所有变量都没问题,因为当我启动下面的代码时,一切都很好,我可以下载正确的文件。
window.navigator.msSaveOrOpenBlob(new Blob([blob], {type: "application/pdf"}), "File.pdf");
谢谢!
答案 0 :(得分:0)
当您调用window.navigator.msSaveOrOpenBlob()
时,上下文(this
引用)为navigator
。但是当你执行navigatorMsSave()
时,它不是你要调用的功能范围,也不是全局范围,具体取决于你调用它的位置。
你可以尝试
var navigatorMsSave = window.navigator.msSaveOrOpenBlob.bind(window.navigator);