var winname = window.open('', "_blank", '')
winname.document.open('text/html', 'replace')
winname.opener = null // 防止代码对父页面修改
winname.document.write(obj.value)
winname.document.close()
}
function saveCode(obj) {
var winname = window.open('', '_blank', 'top=10000')
winname.document.open('text/html', 'replace')
winname.document.write(obj.value)
winname.document.execCommand('saveas','','code.htm')
winname.close()
}
function oCopy(obj){
obj.select()
js=obj.createTextRange()
js.execCommand("Copy")
alert("另存为")
}
这个兼容IE 谷歌和火狐。
JS:
使用JS实现单击连接保存图片2种形式都可以第一种:
<script>
function SaveAs5(imgURL)
{
var oPop = window.open(imgURL,"","width=1, height=1, top=5000,
left=5000")
for(oPop.document.readyState != "complete")
{ if (oPop.document.readyState == "complete")break}
oPop.document.execCommand("SaveAs")oPop.close()
}
</script>
<img src="t_screenshot_17616.jpg" id="DemoImg" border="0"
onclick="SaveAs5(this.src)">
第二种:
<script>function SaveAs5(imgURL)
{
var oPop = window.open(imgURL,"","width=1, height=1, top=5000,
left=5000")
for(oPop.document.readyState != "complete")
{ if (oPop.document.readyState == "complete")break}
oPop.document.execCommand("SaveAs")oPop.close()
}
</script>
<img src="../t_screenshot_17616.jpg" id="DemoImg" border="0">
<a href="#" onclick="SaveAs5(document.getElementByIdx_x('DemoImg').src)">
点击这里下载图片 </a>
PHP:
<a href="test.php?url=uploads/1112/1-11122212201R28.jpg">下载</a>
test.php文件代码:
<?php
$dir=$_GET['url'] //获取图片地址$file = fopen($dir,"r") // 打开文件
Header("Content-type: application/octet-stream")
Header("Accept-Ranges: bytes")
Header("Accept-Length: ".filesize($dir))
Header("Content-Disposition: attachment filename=" . $dir)
echo fread($file,filesize($dir))
fclose($file)
exit
?>
尊敬的用户,您好!很高兴为您答疑。js作为页面端脚本,是无法操作到浏览器上层功能的,而另存为所使用到的权限超出了浏览器赋予js脚本的最高权限,故该行为被禁止,无法通过纯js来实现。
希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。