我们正在尝试隐藏“看到更多”按钮,一旦我们加载了来自Tumblr的所有图像,我们正在使用jSon和jQuery并寻求一些帮助。
我们希望有人能指出我们正确的方向并帮助我们解决一些问题,因为我们目前正在圈子里。
<!doctype html>
<html class="no-js" lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="css/style.css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/jquery-1.7.1.min.js"><\/script>')</script>
<script src="js/jquery.masonry.min.js"></script>
<script src="js/modernizr-2.5.3.min.js"></script>
<script type="text/javascript">
var offset = 0;
function load() {
$.getJSON("http://username.tumblr.com/api/read/json?num=20&start="+offset+"&callback=?",
function(data) {
$.each(data.posts, function(i,item){
switch(item.type) {
case 'photo':
$('#content').append('<div class="item"><img src="'+this['photo-url-500']+'" class="stream-image" alt=""/></div>');
break;
}
});
$('#content').masonry({
columnWidth: 320,
itemSelector: '.item',
isFitWidth: true,
isAnimated: !Modernizr.csstransitions
}).imagesLoaded(function() {
$(this).masonry('reload');
});
});
offset+=20;
}
$(document).ready(function(){
load();
$('.more a').on( "click", function(e) {
load();
e.preventDefault();
});
});
</script>
</head>
<body>
<div id="content" class="container clearfix">
</div>
<div class="more">
<a href="#" title="See More">See More</a>
</div>
</body>
</html>
答案 0 :(得分:0)
在显示帖子之前,请检查data.posts
长度是否为0.如果是隐藏按钮。
function(data) {
if (data.posts.length==0)
$('.more a').hide();
else
$.each(data.posts, function(i,item){
//rest of your code