2016-10-27 27 views
0

我正在创建一个应用程序,它使用在线API来呈现基于搜索关键字的图像。我运行一个forEach循环来在div中的页面中呈现12个图像。如果我点击一个按钮,即使不知道搜索结果会提前发生,是否有办法下载图片,因为不同的用户会输入不同的关键词?我使用Node.js的表达和JavaScript从API结果下载图片

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <meta charset="utf-8"> 
 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
 
    <title></title> 
 
    <link rel="stylesheet" href=""> 
 
</head> 
 
<body> 
 
    <h1>GIF</h1> 
 
    <a href="/home">HOME</a> 
 
    <form action="/home/gif" method="POST"> 
 
    <input type="text" name="gif" placeholder="Search Gif By Keyword"> 
 
    <input type="submit" value="Go"> 
 
    </form> 
 
    <div class="gif"> 
 
    <h2>Seached Results</h2> 
 
    <% gif.forEach((value) => { %> 
 
     <img src="<%= value.images.original.url %>"> 
 
    <%})%> 
 
    </div> 
 
</body> 
 
</html>

+0

“下载它们”是什么意思在您的上下文中。将它们下载到哪里? – jfriend00

回答

0

你似乎是使用模板库,但你没有提到是哪一个。如果不了解更多信息,您可以尝试使用具有download属性的锚链接。例如:

<div class="gif"> 
    <h2>Seached Results</h2> 
    <% gif.forEach((value) => { %> 
    <img src="<%= value.images.original.url %>"> 
    <a href="<%= value.images.original.url %>" download>Download</a> 
    <%})%> 
</div> 

这样,当用户点击链接时,浏览器将下载任何在href。 (在这种情况下应该是图像)。

请注意,download是HTML5属性。您可以在这里检查浏览器的兼容性:http://caniuse.com/#search=download