javascript - 如何让 "left click"模仿 "save target as"?

标签 javascript mouseevent

有没有办法用普通的 Javascript 来完成这个任务?

当用户点击以下内容时:

<div id=mydiv">Left click for download</div>

Javascript 会是什么样子?我正在使用:

$('#mydiv').click(function() {
  window.location.href('where_my_File_is.file');
});

但这只是打开它。有人有一个简单的 JavaScript 脚本吗?

最佳答案

评论中链接的答案解释了为什么这不能在 Javascript 中完成,而是需要在服务器端完成。这特别解释了为什么会出现这种情况:

https://stackoverflow.com/a/5192922/560114

我只是想补充一点,有一种方法可以在客户端启动下载,但它需要使用 Flash,并且它可能对您没有帮助,因为它的目的是使下载成为可能您使用 Javascript 生成的文本文件:

https://github.com/dcneiner/Downloadify

如果它是远程文件,那么强制下载的最佳方法是让服务器将其读入内存,然后将其与强制下载所需的 header 一起输出。无论是本地还是远程,来自服务器的 header 至少需要包含 Content-Disposition: Attachment。这是 PHP 中的跨浏览器示例:

http://davidwalsh.name/php-force-download

关于javascript - 如何让 "left click"模仿 "save target as"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15235940/

相关文章:

cocoa - 在cocoa中点击NSRect打开一个NSWindow

c++ - winapi mouse_event 错误坐标

javascript - 使用 angular 和 animate.css 按顺序设置动画

javascript - 使用相同的 javascript 对图像库产生影响

javascript - 在 AngularJS 中显示多条评论

javascript - 如何使用 JavaScript 查找现有的图像标记并将属性添加到图像标记

c++ - 将鼠标点击发送到 WebEngineView Qt C++

javascript - 为什么发布后没有定义任何集合?

javascript - AngularJS 中跟随鼠标弹出对话框

Emacsclient 不响应鼠标点击