【问题标题】:Instagram API - get images using jqueryInstagram API - 使用 jquery 获取图像
【发布时间】:2017-10-05 01:26:33
【问题描述】:

我创建了一个 AJAX 函数,用于获取我的 Instagram 帐户的四张最新图片。现在我想创建一个append 函数,将我的两个第一张图像插入一个名为insta-left<div> 和另外两个在第二个<div> 称为insta-right 中,但我找不到拆分的解决方案我的功能:

var token = 'MY_TOKEN', 
    userid = MY_USER_ID,
    num_photos = 4; // number of photos i get

$.ajax({
    url: 'https://api.instagram.com/v1/users/' + userid + '/media/recent',
    dataType: 'jsonp',
    type: 'GET',
    data: {
        access_token: token,
        count: num_photos
    },
    success: function(data) {
        console.log(data);
        for (x in data.data) {
            $('.insta-left').append('<img src="' + data.data[x].images.low_resolution.url + '">');
        }
    },
    error: function(data) {
        console.log(data);
    }
});

如果我这样做,所有图像都将插入insta-left。如何拆分我的功能以获取此 &lt;div&gt; 中的前两张照片和另一张 &lt;div&gt; 中的两张最新照片?

【问题讨论】:

    标签: javascript jquery ajax append instagram-api


    【解决方案1】:

    做一个常规的for循环并检查索引怎么样?

    success: function(data) {
    console.log(data);
        for (i = 0; i < data.data.length; i++) {
            if (i < 2) {
                $('.insta-left').append('<img src="' + data.data[i].images.low_resolution.url + '">');
            } else {
                $('.insta-right').append('<img src="' + data.data[i].images.low_resolution.url + '">')
            }
        }
    

    您可能还想考虑 Instagram API 返回的照片数量少于您请求的照片数量的情况。

    【讨论】:

    • 我比我更喜欢你的解决方案。但也许添加一个else if (i &lt; 4) { ... },这样它就不会渲染比它应该渲染的更多的图像。第一个if 语句实际上应该是if(i &lt; 2),因为&lt;= 将呈现3 个图像。
    • if (i &lt;= 1) {…} 而不是 if (i &lt;= 2) {…} 匹配将其分成两部分:0、1 和 2、3
    • 很好的反馈!我更改了答案以反映这些 cmets。
    【解决方案2】:

    你可以试试

    for(i = 0; i < 2; i++) {
      $('.insta-left').append(...);
    }
    
    for(i = 2; i < 4; i++) {
      $('.insta-right').append(...);
    }
    

    您可以使用data.data[i]访问图片。

    另外,运行一些检查可能是个好主意,这样它就不会尝试附加不存在的图像。类似的,

    if(typeof data.data[i] !== 'undefined') { ... }
    

    【讨论】:

    • 谢谢你完美地工作,实际上我的帐户中总会有更多谢谢 4 张图片,但很高兴知道它 ;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-22
    • 1970-01-01
    • 2017-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多