【问题标题】:Getting first image result from flickr从 flickr 获取第一个图像结果
【发布时间】:2013-06-24 17:38:58
【问题描述】:

我有一个从 flickr 获取第一张图片的典型示例。我从 html 调用这个脚本。我使用 Javascript 从数据库中获取一个值,然后用这句话将该值发送到 html,以便显示。

document.getElementById("winner").innerHTML=output1;

这是我用来获取第一张图片的代码:

<script>
    (function() {
        var flickerAPI = "http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=?";
        $.getJSON( flickerAPI, {
            tags: "clint eastwood",
            tagmode: "any",
            format: "json"
        })
        .done(function( data ) {
            $.each( data.items, function( i, item ) {
                $( "<img/>" ).attr( "src", item.media.m ).appendTo( "#image" );
                if ( i === 0 ) {
                    return false;
                }
            });
        });
    })();
</script>

如何将我从数据库收到的值传递给该脚本,以便在 Flickr 中搜索该标签?

谢谢。

【问题讨论】:

  • 所以您将数据库结果存储在#winner 中,并且您想将其传递给 flickr,因为标签是否正确?
  • 是的!抱歉,很难解释哈哈哈

标签: jquery html json flickr


【解决方案1】:

您只需要获取您存储在#winner 中的 HTML 并将其传递给闪烁 API

var tags = document.getElementById("winner").innerHTML;
var flickerAPI = "http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=?";
    $.getJSON( flickerAPI, {
        tags: tags,
        tagmode: "any",
        format: "json"
    })

HTML 存储在 var 标签中并在 getJSON 调用中传递

但是,如果您的 DB 调用与您的闪烁调用在同一范围内,您应该能够只存储和传递 output1 并保存额外的 DOM 读取

【讨论】:

  • 酷!我决定按照你所说的将 flickr 调用放在我调用 de DB 的同一个地方。你知道如何删除之前搜索的图片吗?
  • 是的。它失败是因为 .appendTo 函数。下一次搜索的图像会附加到我从上一次搜索中获得的图像。
  • 你可以在 appendTo 调用之前使用 $('#image').empty()
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-14
  • 1970-01-01
相关资源
最近更新 更多