javascript - 首先运行 JQuery,然后在单击链接时下载文件

标签 javascript jquery

我有一个链接,其中包含直接文件下载 URL。因此,当用户单击该链接时,该文件就会下载。

这是链接:

<a class="download-video" href="http://mylink.mp4?file=1&name=A Video"> Download</a>

我希望在下载此文件之前运行一些 JQuery。我能够找到解决方案,但我没有直接下载,而是被重定向到视频。我只想在没有任何重定向的情况下下载。这是我尝试过的:

$('a.download-video').click(function(event) {

    var href = this.href;
    //My JS Code
    alert(href);

    event.preventDefault();

   window.location = href;
});

谢谢

最佳答案

您可以添加 download attribute到 anchor 标记,然后不要使用 preventDefault();

$('a.download-video').click(function(event) {

    var href = this.href;
    //My JS Code
    alert(href);

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="download-video" href="https://www.w3schools.com/html/mov_bbb.mp4?file=1&name=A Video" download> Download</a>

这是一个 link for browser compatibility .

关于javascript - 首先运行 JQuery,然后在单击链接时下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42931351/

相关文章:

javascript - javascript函数中的jquery不起作用

php - 我必须为每张图片创建一个缩略图文件吗?

javascript - 文本选择闪烁

javascript - 停止函数的执行?

javascript - 使用脚本将属性设置为数据元素

javascript - 切换其他表行的可见性

javascript - 在 Chrome 中打开 url 并关闭 Safari 选项卡

javascript - 如果 IE 忽略/隐藏 div

javascript - 将 HTML 中具有全名的类列表转换为 JSON

javascript - 选择以 "abc"开头并以 "xyz"结尾的元素