Javascript和Json问题。你能通过js和html获得图像链接吗?

时间:2014-01-30 17:54:11

标签: javascript jquery html json

所以知道如何从json文件中获取特定信息并将其显示在html id上。
如此:

Javascipt:

function showFollows(b){
 alert(b._total);}
  $.getJSON("https://api.twitch.tv/kraken/channels/OptimalBread/follows.json?callback=?", function(b){document.getElementById("follows").innerHTML += b._total;}); 

HTML:

<div id="follows"></div>


那么我怎么做同样的事情就是图片链接也在json文件中。在上面的例子中,它从文件中获取文本,但是我可以在那里显示图像吗?这是我试过的:
Javascript:

function showImage(d){
 alert(d.logo);}
 $.getJSON("https://api.twitch.tv/kraken/channels/OptimalBread.json?callback=?", function(d){document.getElementById("twitchLogo").innerHTML += d.logo;});


HTML:

<div id="twitchLogo"></div>


但是只显示图像链接而不显示图像。我怎么能够将图像链接到img src?
感谢您的帮助!如果我要问的是否清楚,请告诉我。

2 个答案:

答案 0 :(得分:4)

你可以创建一个新的img标签,并使用jQuery将其设置为内部html:

function showImage(d)
{
    var url = "https://api.twitch.tv/kraken/channels/OptimalBread.json?callback=?";
    $.getJSON(url, function(d) { 
        $("#twitchLogo").html($("<img>", { src: d.logo }));
    });
}

或者如果您想要保留twitchLogo

的内容
$("#twitchLogo").append($("<img>", { src: d.logo }));

答案 1 :(得分:1)

而不是:

document.getElementById("twitchLogo").innerHTML += d.logo;

你应该这样写:

document.getElementById("twitchLogo").innerHTML += '<img src="' + d.logo + '">';