javascript - Firefox 动态生成链接点击

标签 javascript firefox

我有逻辑,当用户点击“下载”按钮时,它会向rest api发出http请求,然后通过响应浏览器或开始下载,或者向用户写入一条消息,说明下载无法开始,代码如下所示

if (file.is_active) {
    var link = document.createElement('a');
    link.href = filesUri + file.path;
    link.title = 'filedownload';
    link.setAttribute('download', file.body);
    link.click();
} else {
    // error message
}

这段代码在 safari/chrome 中工作得很好,但在 firefox 中却不行,有没有可能绕过这个检查?

最佳答案

Firefox 可能会在没有用户交互的情况下阻止下载。

您应该将按钮放在 a 标记内,将监听器设置为按钮,并在事件委托(delegate)之前链接更改 a 属性以下载正确的文件。

关于javascript - Firefox 动态生成链接点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44026453/

相关文章:

javascript - 如何最好地将格式化文本复制到剪贴板

java - Netbeans - 运行 Web 项目时出现 "Cannot run/usr/bin/firefox"

java - Selenium WebDriver/Firefox|Chrome/Java 如何禁用图像加载

使用附加构建器的导航栏上的 Firefox 扩展图标

javascript - 在不同浏览器中设置window.location.protocol

javascript - primefaces 命令按钮使用 jquery 更新数据表内

javascript - 禁用上下文菜单但不在文本框中

javascript - 单选按钮的不同值(如果选择或未选择)

javascript - 在 MongoDB 中,为什么搜索不存在的电子邮件会使我的整个应用程序崩溃

firefox - Bootstrap glyphicons Firefox 问题