js 如何将网站上的图片下载到指定本机上? http://www.learn365.cn/context_blog.asp?id=19311这个是ASP的,不是JS的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 asp的我会,谢谢,asp不适合大量图像的自动下载我想实现的是,将url下的图片下载到本机硬盘上是自动下载 我在上面的例子里,可以保存html页面,用了js 的fso,当然要许可不安全访问 可以使用ajax下载图片的下面是我写的,你可以参考一下,希望对你有用download("http://www.google.cn/intl/zh-CN/images/logo_cn.gif",saveStream,"G:\\zydwa.jpg");download("http://www.google.cn",saveText);function download(url,callback,saveto){ var xmlhttp; var Versions = [ "MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"]; for (var i = 0; i < Versions.length; i++) { try { xmlhttp = new ActiveXObject(Versions[i]); break; } catch (e) {} } xmlhttp.onreadystatechange = function(){ if(xmlhttp.readyState==4) { if(xmlhttp.status==200) { var Contents = xmlhttp.responseBody; callback(xmlhttp,saveto); } } } xmlhttp.open("GET", url, false); xmlhttp.send(); } //下载文件的函数function saveStream(xmlhttp,path){ var stream = xmlhttp.responseBody; var = new ActiveXObject("ADODB.Stream"); ados.Mode = 3; ados.Type = 1; ados.Open(); ados.Write(stream); ados.SaveToFile(path, 2);}//下载网页代码的函数function saveText(xmlhttp){ var text = xmlhttp.responseText; WScript.Echo(text);} </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> 我这里是一切正常的呃,上面少了个变量名字function saveStream(xmlhttp,path){ var stream = xmlhttp.responseBody; var ados = new ActiveXObject("ADODB.Stream"); //这里 ados.Mode = 3; ados.Type = 1; ados.Open(); ados.Write(stream); ados.SaveToFile(path, 2);} 确实是saveas.再给你提供一个用js + VBS实现读取图像数据的方法.给你参考一下.<html><head><script language="JScript">function DoItNow() { alert("starting!"); var sURL= "http://www.google.com/intl/en_ALL/images/logo.gif"; var oReq = new ActiveXObject("MSXML2.XMLHTTP.3.0"); oReq.open("GET", sURL, false); oReq.send(); alert("text response received from server is "+oReq.responseText); var s= BinaryArrayToHexCSV( oReq.responseBody ); // array of bytes alert( s );}</script> <script language="VBScript">Function BinaryArrayToHexCSV( aBytes ) Dim j, sOutput For j = 1 to LenB(aBytes) sOutput= sOutput & Hex( AscB( MidB(aBytes,j,1) ) ) sOutput= sOutput & "," Next BinaryArrayToHexCSV= sOutputEnd Function</script></head><body> <input type=button value="click me" onClick= "DoItNow();"> </body></html> 我已经把浏览器的安全级别设置为最低,能启用的也都启用了但是竟然爱报无法创建对象,另外,9楼里面的callback函数是从哪里来的,始终没看明白 jsp的loading怎么做? web窗体载入后,求控件宽度? 如何让层轮番显示,间隔时间为3秒? 【求助】在单独的js文件中使用“document.getElementById”方法找不东西???? 求教,关于动态更新表格并添加事件的问题 求助关于金钱的显示 这个设计打印页面配置的脚本怎么不好使? 100求救!如何让鼠标移动到一张图片上时候图片变成另一张移开后又恢复原来的图片 // 在单击时只执行MB();怎样才能两个函数都执行? 来自前端初学者的问题 为什么我这个动画键盘按下会卡顿 求一个可以挂在网页上自动投票的js代码和方法 想实现利用左右箭头滚动图片,高分100分
我想实现的是,将url下的图片下载到本机硬盘上
是自动下载
下面是我写的,你可以参考一下,希望对你有用
download("http://www.google.cn/intl/zh-CN/images/logo_cn.gif",saveStream,"G:\\zydwa.jpg");
download("http://www.google.cn",saveText);function download(url,callback,saveto)
{
var xmlhttp;
var Versions = [ "MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"];
for (var i = 0; i < Versions.length; i++)
{
try
{
xmlhttp = new ActiveXObject(Versions[i]);
break;
} catch (e) {}
}
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState==4)
{
if(xmlhttp.status==200)
{
var Contents = xmlhttp.responseBody;
callback(xmlhttp,saveto);
}
}
}
xmlhttp.open("GET", url, false);
xmlhttp.send();
} //下载文件的函数
function saveStream(xmlhttp,path)
{
var stream = xmlhttp.responseBody;
var = new ActiveXObject("ADODB.Stream");
ados.Mode = 3;
ados.Type = 1;
ados.Open();
ados.Write(stream);
ados.SaveToFile(path, 2);
}//下载网页代码的函数
function saveText(xmlhttp)
{
var text = xmlhttp.responseText;
WScript.Echo(text);
}
<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>
我这里是一切正常的呃,上面少了个变量名字function saveStream(xmlhttp,path)
{
var stream = xmlhttp.responseBody;
var ados = new ActiveXObject("ADODB.Stream"); //这里
ados.Mode = 3;
ados.Type = 1;
ados.Open();
ados.Write(stream);
ados.SaveToFile(path, 2);
}
确实是saveas.
再给你提供一个用js + VBS实现读取图像数据的方法.
给你参考一下.<html>
<head>
<script language="JScript">
function DoItNow() {
alert("starting!");
var sURL= "http://www.google.com/intl/en_ALL/images/logo.gif";
var oReq = new ActiveXObject("MSXML2.XMLHTTP.3.0");
oReq.open("GET", sURL, false);
oReq.send();
alert("text response received from server is "+oReq.responseText);
var s= BinaryArrayToHexCSV( oReq.responseBody ); // array of bytes
alert( s );
}
</script>
<script language="VBScript">
Function BinaryArrayToHexCSV( aBytes )
Dim j, sOutput
For j = 1 to LenB(aBytes)
sOutput= sOutput & Hex( AscB( MidB(aBytes,j,1) ) )
sOutput= sOutput & ","
Next
BinaryArrayToHexCSV= sOutput
End Function
</script>
</head>
<body>
<input type=button value="click me" onClick= "DoItNow();">
</body>
</html>
但是竟然爱报无法创建对象,另外,9楼里面的callback函数是从哪里来的,始终没看明白