我希望我的用户能够使用jQuery从我的网站下载图像。例如,我在我的网站上有如下图像。当用户单击“下载”按钮时,该图像必须下载到用户系统。我能做些什么来实现这个目标?
<div class="download"><img src="http://m.com/hello.png"><div>
编辑:也欢迎使用PHP代码,例如download.php?url=http://m.com/hello.png
,
PS:http://m.com/hello.png是外部网址。
答案 0 :(得分:3)
对于服务器端,您可以将图像单击指向强制下载的PHP页面。
在您的HTML页面上,您将拥有:
如果是PNG文件
<a href="download.php?ext=png"><img src="hello.png" /></a>
或JPG文件
<a href="download.php?ext=jpg"><img src="hello.jpg" /></a>
然后是一个PHP页面download.php
,如下所示
<?php
if($_GET['ext'] == 'png') {
$ext = 'png';
} elseif($_GET['ext'] == 'jpg') {
$ext = 'jpg';
}
header('Content-disposition: attachment; filename=Name-of-Image.'.$ext);
header('Content-type: image/'.$ext);
readfile('http://m.com/hello.'.$ext);
?>
答案 1 :(得分:0)
PHP代码:
header('Content-Type: image/png');
header('Content-Disposition: attachment; filename="filename.png"');
readfile('hello.png');
答案 2 :(得分:0)
如果不使用PHP,您将无法可靠地执行此操作。我在本网站上发现了一个可以帮助您解决此问题的问题:Force Download an Image Using Javascript
实际上有一种依赖于HTML5的方法,但我不确定你是否可以认为它是可靠的。