这是代码。
点击链接后,应该打开另存为对话框
<a href="http://www.experts-exchange.com/xp/images/newNavLogo.png" target="_new">
<img src="http://www.experts-exchange.com/xp/images/newNavLogo.png" align="left" alt="" />
</a>
我们如何使用jQuery或javaScript来实现这个目标?
答案 0 :(得分:2)
如果您使用的是PHP或任何其他平台,则可以始终使用强制下载技术。
这可能会有所帮助:
<?php
$file = 'tag_cloud.gif';
if(!file){
// File doesn't exist, output error
die('file not found');
}else{
// Set headers
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$file");
header("Content-Type: image/gif");
header("Content-Transfer-Encoding: binary");
// Read the file from disk
readfile($file);
}
?>
在图像的点击事件中将上述脚本称为ajax。
干杯
答案 1 :(得分:1)
答案 2 :(得分:0)
不幸的是,它仅适用于IE,但不适用于Firefox。
</head>
<script>
function saveImageAs (imgOrURL) {
if (typeof imgOrURL == 'object')
imgOrURL = imgOrURL.src;
window.win = open (imgOrURL);
setTimeout('win.document.execCommand("SaveAs")', 500);
}
</script>
<body>
<A HREF="javascript: void 0"
ONCLICK="saveImageAs(document.anImage); return false"
>save image</A>
<IMG NAME="anImage" SRC="../apache_pb2.gif">
</body>
答案 3 :(得分:0)
$("#img").click(function() {
document.execCommand('SaveAs','1','give img location here');
});
如果不起作用,请使用此jquery插件进行跨浏览器功能“跨浏览器设计模式”
答案 4 :(得分:-1)
function dl(obj){
window.location = obj.src;
}
<br/>
..........
<br/>
<img src="http://www.experts-exchange.com/xp/images/newNavLogo.png" align="left" alt="" onClick="dl(this);"/>
<br/>
如果进行了下载重定向,较新的浏览器将粘贴到旧页面。
答案 5 :(得分:-1)
试试这个
HTML:
<img src="http://www.experts-exchange.com/xp/images/newNavLogo.png" align="left" alt="" />
脚本:
$('img').each(function(){
$(this).wrap('<a href="'+this.src+'?download=true" target="_blank"/>');
});
最重要的是你需要在服务器端指定这个,以便在添加了?downlaod = true时发送带有处置附件的文件