我正在構建一個博客,我只想顯示每個博客文章的相關圖像,使用砌體在一個很好的排序網格中。當用戶點擊圖片時,博客文字內容將顯示在圖片下方(同一頁面上)。由於某些原因,當我添加點擊功能時,隱藏的內容不會顯示出來。我並不熟悉on()事件處理程序(因爲Masonry而需要),並且可能有些顯而易見的東西我缺少。發生什麼事情是我在DOM中看到元素顯示:block,但它們不顯示。砌體和jQuery內容切換(slideDown,顯示等)
的HTML -
<?php get_header(); ?>
<div id="posts" class="clearfix">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="post">
<a class="view" href="#"><?php the_post_thumbnail(465, 999) ?></a>
<div class="overlay">+</div>
<article>
<a href="#" class="close">x</a>
<h1><?php the_title() ?></h1>
<hr>
<?php the_content() ?>
<span><?php the_date('Y/d/m') ?></span>
</article>
</div>
<?php endwhile; endif; ?>
</div>
<div class="navigation">
<?php next_posts_link(); ?>
</div>
<?php get_footer(); ?>
的使用JavasScript -
var $container = $('#posts');
$container.imagesLoaded(function(){
$container.masonry({
itemSelector: '.post',
columnWidth: 475,
isAnimated: true
});
});
$(document).on("click", "a.view", function(){
if(!$(this).parent().find('article').is(':visible')){
$(this).parent().find('article').slideDown(250);
}
else {
$(this).parent().find('article').slideUp(250);
}
e.preventDefault();
});
$(document).on("mouseover", "a.view", function(){
$(this).parent().find('.overlay').stop().animate({ opacity: 1 }, 250);
});
$(document).on("mouseout", "a.view", function(){
$(this).parent().find('.overlay').stop().animate({ opacity: 0 }, 250);
});
你有一個網址,我可以看到真實的東西,CSS和所有?我想你的代碼,並沒有磚石和它的作品,因爲我猜它應該,所以它可能是磚石的結合,你的CSS使其... – bang 2012-02-21 08:19:19
是 - http://staffanestberg.com/lesmarket/ – 2012-02-21 14:55:14