javascript - Instafeed 将数据过滤到不同的 div 中

标签 javascript jquery filter instagram instafeedjs

我有 4 个 div,我想显示 20 个结果,如下所示:

Div 1 - 前 5 个提要

Div 2 - 接下来 5 个提要(不包括前 5 个)

第 3 部分 - 接下来 5 个 Feed(不包括前 10 个)

第 4 部分 - 接下来 5 个 Feed(不包括前 15 个)

HTML

<ul id="instafeed2" class="instafeed slides"></ul>
<ul id="instafeed3" class="instafeed slides"></ul>
<ul id="instafeed4" class="instafeed slides"></ul>
<ul id="instafeed5" class="instafeed slides"></ul>

JS

var feed = new Instafeed({
        get: 'user',
        userId: userId,
        accessToken: 'accessToken',
        limit:10,
        template: '<li><a href="{{link}}" target="_blank"><img src="{{image}}" /></a></li>',
        resolution: 'standard_resolution',
        target: 'instafeed2',
    });

feed.run();

插件网址: http://instafeedjs.com/ Instafeed

我能够获取结果,但无法拆分它们。

请提出建议。

最佳答案

是的,您可以将 feed 分成不同的 div。为了实现这一目标;

  1. 覆盖成功回调实现,它提供了根据我们的需要控制 Feed 数据的可行性。
  2. 使用所需模板创建提要数据(因为此成功函数返回 JSON)
  3. 对 Feed 数据进行切片并分配给 Div

查找demo code here

    var imgs = [];
    var feed = new Instafeed({
        get: 'tagged',
        tagName: 'srilanka',
        clientId: '467ede5a6b9b48ae8e03f4e2582aeeb3',
        limit: 20,
        template: '<a href="{{link}}" target="_blank"><img src="{{image}}"/></a>',
        success: function (data) {
            // read the feed data and create owr own data struture.
            var images = data.data;
            var result;
            for (i = 0; i < images.length; i++) {
                var image = images[i];
                result = this._makeTemplate(this.options.template, {
                    model: image,
                    id: image.id,
                    link: image.link,
                    image: image.images[this.options.resolution].url
                });
                imgs.push(result);
            }
            //split the feed into divs
            $("#instafeed2").html(imgs.slice(0, 5));
            $("#instafeed3").html(imgs.slice(5, 10));
            $("#instafeed4").html(imgs.slice(10, 15));
            $("#instafeed5").html(imgs.slice(15, 20));
        }
    });
    feed.run();
    <html>
    <head>
        <title>Example of Instafeed filter data into different divs - Ajith</title>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
        <script src="http://sriajith.info/wp-content/uploads/2015/05/instafeed.min_.js"></script>
    </head>
    
    <body>
        <p>Div1</p>
        <ul id="instafeed2" class="instafeed slides"></ul>
        <p>Div2</p>
        <ul id="instafeed3" class="instafeed slides"></ul>
        <p>Div3</p>
        <ul id="instafeed4" class="instafeed slides"></ul>
        <p>Div4</p>
        <ul id="instafeed5" class="instafeed slides"></ul>
    </body>
    </html> 

关于javascript - Instafeed 将数据过滤到不同的 div 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29664464/

相关文章:

javascript - 交互 2 个单选按钮 2 个不同的函数 Javascript

javascript - href 链接在特定位置处带有目标空白

java - 如何使用 JQuery 附加 servlet 的输出

php - 当 session 数组不再足够时

javascript - 从 API 端点过滤对象数组

javascript - 如何将前导 "0"添加到日期字符串的月/日?

javascript - 如何在easyui中打开临时定义对话框

javascript - 在 jquery 插件成功事件上操作 DOM

java - Java I/O 流过滤器示例

javascript - Cypress - 如何使用 RegEx 进行负向预测?