4
我有一些麻煩,而不是初步化的泥工。我的div有不同的高度,所以我使用Masonry和Isotope使它們正確顯示。所有這些div都有.item
重新初始化砌體/同位素後按下href#/
請參閱網站:http://www.dokfilm.no/並向下滾動到Nyhende。
通過按Nyhende或加號圖標。你可以看到divs被加載到彼此之上。他們也被推到頁面的後面。這是因爲砌體在按下鏈接時不會被初始化。
如果調整瀏覽器的窗口,你會看到,砌體被reinitilized和所有項目都直接移動自己正確的位置。
的問題是,砌體沒有被以下reinitilized:
<a href="#/ "title="Artiklar" data-target="#" class="nodec">
<div class="expander">
<?php echo '<h1>' . esc_html__('Nyhende', 'dokfilm') . '</h1>'; ?>
<img class="open" src="<?php bloginfo('stylesheet_directory'); ?>/img/plus.png" alt="Open">
<img class="close" src="<?php bloginfo('stylesheet_directory'); ?>/img/minus2.png" alt="Close" />
</div>
</a>
這裏有更多的PHP如果需要的話。 artikler2.php是帖子被加載的地方。
PHP
<div class="clearfix">
<a id="artikler"></a>
<section id="artikler" class="section artikler">
<div class="blacktext">
<div class="container">
<div class="col-md-12 solidborderned bittelittpaddingoppned littpaddingned bittelittluft">
<a href="#/ "title="Artiklar" data-target="#" class="nodec">
<div class="expander">
<?php echo '<h1>' . esc_html__('Nyhende', 'dokfilm') . '</h1>'; ?>
<img class="open" src="<?php bloginfo('stylesheet_directory'); ?>/img/plus.png" alt="Open">
<img class="close" src="<?php bloginfo('stylesheet_directory'); ?>/img/minus2.png" alt="Close" />
</div>
</a>
<div id="event-info" class="text littluft">
<div class="row">
<div class="col-md-12">
<?php include 'artikler2.php' ?>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
PHP
<div id="isotope-list">
<div class="row">
<?php while ($the_query->have_posts()) : $the_query->the_post(); ?>
<div class="item col-md-6 littluft">
<div class="black content grid lefttext maximg littluft">
<a href="<?php the_permalink() ?>">
<?php if (has_post_thumbnail()) { the_post_thumbnail('event_thumb'); } ?>
</a>
<div class="red padding">
<h2 class="whitetext nomargin"><?php the_title(); ?></h2>
<span class="whitetext thin">
<?php the_time('j. F Y') ?>
</span><br/>
<span class="whitetext thin">
<?php
$content = get_post_field('post_content', get_the_ID());
$content = preg_replace('/<[\/]?b>/i', '', $content);
$content_parts = get_extended($content);
echo $content_parts['main'];
?>
</span>
<div class="whitelink"><a href="<?php the_permalink() ?>">Les mer</a></div>
</div>
</div>
</a>
</div>
<?php endwhile; ?>
</div>
</div>
PHP頁腳
<script src="<?php bloginfo('stylesheet_directory'); ?>/js/masonry.pkgd.min.js"></script>
<script>
(function($) {
var $container = $('.masonry-container');
$container.imagesLoaded(function() {
$container.masonry({
columnWidth: '.item',
itemSelector: '.item'
});
});
//Reinitialize masonry inside each panel after the relative tab link is clicked -
$('a[data-toggle=tab]').each(function() {
var $this = $(this);
$this.on('shown.bs.tab', function() {
$container.imagesLoaded(function() {
$container.masonry({
columnWidth: '.item',
itemSelector: '.item'
});
});
}); //end shown
}); //end each
})(jQuery);
</script>
Isotope.js
jQuery(function($) {
var $container = $('#isotope-list'); //The ID for the list with all the blog posts
$container.imagesLoaded(function() {
$container.isotope({ //Isotope options, 'item' matches the class in the PHP
itemSelector: '.item',
layoutMode: 'masonry'
});
});
任何想法?
期待收到你的來信,
我得到'未捕獲的錯誤:語法錯誤,無法識別的表達。 'Artiklar'錨具有錯誤的href屬性格式。你可以修復這些更好的調試。我相信在這個修復程序之後,你的代碼將起作用 – Ergec
謝謝你指出。修正了這個問題,但仍然是一樣的錯誤。 – Olen
您同時在網站上加載了isotope.pkgd.min.js(舊版本)和masonry.pkgd.min.js。如你所知,它們不是一起使用的。該Nyhende項目正在通過同位素代碼,而不是石工代碼張貼。這些項目位於'
'中,它由isotope.js中的代碼執行'var $ container = $('#isotope-list'); \t \t $ container.imagesLoaded(函數(){ \t \t $ container.isotope({ \t \t itemSelector: '.item', \t \t layoutMode: '磚石'});});'。可能想要發佈該代碼。此外,你有2個版本的jQuery加載,當然不是一個好主意。 – Macsupport