Instafeed和DOM操作

时间:2015-01-18 16:08:46

标签: jquery dom instagram

我使用Instafeed.js从instagram中提取图片。它运作得很好。这是工作项目的链接。

http://www.craftysnaps.com

问题是,我无法通过jQuery进行功能更改。这是我用来将图像附加到名为#content的div。

var feed = new Instafeed({  
    target: 'content',  
    get: 'tagged',
    tagName: 'craftysnaps',
    clientId: 'c57635b97e7440dd8bacf38304db4e07',
    resolution: 'standard_resolution',
     template: '<article><img src="{{image}}" /><div class="likes">{{likes}}</div><div class="location">{{location}}</div><div class="caption">{{caption}}</div><div class="more"><a href="{{link}}" target="_blank"><img src="images/more.png" /></div></a></article>'
    });     
feed.run(); 

在模板部分,我调用了Instagram帖子的位置。我想在其自己geopin中添加关于位置div图片,但是如果位置为空我想隐藏图像。我可以通过编码这样的东西轻松地做到这一点。

if($(".location").html().length ==0){
   $(".hidethisimage").hide();
}

但由于我的模板中没有任何DIV确实存在于DOM中,因此我无法为其添加功能。这里有什么想法吗?

1 个答案:

答案 0 :(得分:1)

没有经过测试,但我假设您可以使用Instafeed的after回调来操作元素(动态)添加到DOM之后,例如

var feed = new Instafeed({
    target: 'content',
    get: 'tagged',
    tagName: 'craftysnaps',
    clientId: 'c57635b97e7440dd8bacf38304db4e07',
    resolution: 'standard_resolution',
    template: '<article><img src="{{image}}" /><div class="likes">{{likes}}</div><div class="location">{{location}}</div><div class="caption">{{caption}}</div><div class="more"><a href="{{link}}" target="_blank"><img src="images/more.png" /></div></a></article>',
    after: function () {
        if ($(".location").is(":empty")) {
            $(".location").parent("article").hide();
        }
    }
});
feed.run();