簡體   English   中英

使用 Javascript 中的 api 調用將圖像 url 提取到 HTML 中的圖像標簽?

[英]Fetch image url to image tag in HTML using api calls in Javascript?

我有 json 對象,我想使用 api 調用從遠程 url 獲取圖像到這個img標簽。 API 鏈接是https://api.github.com/emojis

    <div class="emoji">
          <ul id="emojiz"></ul>
          <span style="display:inline;"><img src=""></span>
          <span style="display:inline; "><img src=""></span>
          <span style="display:inline;"><img src=""></span>
          <span style="display:inline; "><img src=""></span>
    </div>

Javascript代碼如下:

fetch('https://api.github.com/emojis')
.then(response => response.json())
.then(data => {
 console.log(data) // Prints result from `response.json()` in getRequest
})
.catch(error => console.error(error))

 <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script> $(document).ready(function(){ var images={}; fetch('https://api.github.com/emojis') .then(response => response.json()) .then(data => { images=data; Object.keys(data).forEach((key) => { var ele = document.createElement("span"); var img = document.createElement("img"); img.setAttribute("src", data[key]); ele.appendChild(img); var elem=document.getElementById('emoji').appendChild(ele); }); }) .catch(err => console.error(err)); $("#searchBox").change(function(event){ var searchTxt=$("#searchBox").val(); $('#emoji').empty(); setTimeout(function(){ Object.keys(images).forEach((key) => { if(images[key].indexOf(searchTxt)!=-1){ var ele = document.createElement("span"); var img = document.createElement("img"); img.setAttribute("src", images[key]); ele.appendChild(img); var elem=document.getElementById('emoji').appendChild(ele); } }); },0); }); }); </script> </head> <body> <input type="text" id="searchBox" placeholder="search"> <div id="emoji"> <ul id="emojiz"></ul> <span style="display:inline;"><img src=""></span> <span style="display:inline; "><img src=""></span> <span style="display:inline;"><img src=""></span> <span style="display:inline; "><img src=""></span> </div> </body> </html>

請試試這個。

fetch('https://api.github.com/emojis')
.then(response => response.json())
.then(data => {
 console.log(data) // Prints result from `response.json()` in getRequest
  Object.keys(data).forEach((key) => {
    var ele = document.createElement("span");
    var img = document.createElement("img");
    img.setAttribute("src", data[key]);
    ele.appendChild(img);
    //append ele to parent div
  });
})
.catch(error => console.error(error))

這將幫助您:

HTML

 <div class="emoji" id="emoji">
              <ul id="emojiz"></ul>
              <span style="display:inline;"><img src=""></span>
              <span style="display:inline; "><img src=""></span>
              <span style="display:inline;"><img src=""></span>
              <span style="display:inline; "><img src=""></span>
    </div>

JS:

fetch('https://api.github.com/emojis')
.then(response => response.json())
.then(data => {
    var div = document.createElement('div');

    div.innerHTML = '';

    for (var prop in data) {
       console.log(data[prop]);
       div.innerHTML +=
        '<span style="display:inline;"><img src="'+data[prop]+'"></span>';
    }
    document.getElementById('emoji').appendChild(div);
})
.catch(error => console.error(error))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM