将Packery与多个容器一起使用?

尾数

嗨,我正在尝试使用包装库来放置包含各种物品的外观书。每个项目都有一组图像,这些图像正在使用包装厂进行包装。

我为每个容器都创建了容器div,但包装纸似乎只在第一个容器上工作。谁能帮我?

这是HTML

<?php
    $args = array(
    'posts_per_page'   => 100);

        $posts = get_posts($args);

        if($posts)
        {
            foreach($posts as $post)
                {
                    echo '<div class="range">'; // div for each range
    ?>
                    <h1><?php the_field('range_title'); ?></h1>
                        <?php
                        $images = get_field('range_gallery');
                        if( $images ):
                        ?>
                            <div id="slider">
                                <?php foreach( $images as $image ): ?>
                                    <img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>" />
                                    <p><?php echo $image['caption']; ?></p>
                                <?php endforeach; ?>
                            </div>
                            <div id="carousel" class="packery">
                                <?php foreach( $images as $image ): ?>
                                    <div class="item" >
                                        <img src="<?php echo $image['sizes']['thumbnail']; ?>" alt="<?php echo $image['alt']; ?>" />
                                    </div>
                                <?php endforeach; ?>
                            </div>
                        <?php endif;?>
                    <?php echo '</div>';
                }
         }

    ?>

这是非常基本的javascript:

jQuery(document).ready(function () {

var container = document.querySelector('.packery');
var pckry = new Packery( container, {
  // options
  itemSelector: '.item',
  gutter: 10
});

});

尼达尔

您需要使每个包装容器具有不同的类名。然后为每个包装容器创建一个新的Packery类实例。我已经接受了您的代码并对其进行了重构,以便html在循环的末尾回显。

<?php
$args = array('posts_per_page' => 100);
$posts = get_posts($args);
if($posts){
    $html = '';
    $script = '';
    foreach($posts as $key => $post){
        $html .= '<div class="range">'; // div for each range
        $html .= '<h1>'.get_field('range_title').'</h1>';
        $images = get_field('range_gallery');
            if( $images ){                
                $html .= '<div id="slider">';
                foreach( $images as $image ){
                    $html .= '<img src="'.$image['url'].'" alt="'.$image['alt'].'" />';
                    $html .= '<p>'.$image['caption'].'</p>';
                }
                $html .= '</div>';
                $html .= '<div id="carousel" class="packery'.$key.'">';
                foreach( $images as $image ){
                    $html .= '<div class="item" >';
                    $html .= '<img src="'.$image['sizes']['thumbnail'].'" alt="'.$image['alt'].'" />';
                    $html .= '</div>';
                }
                $html .= '</div>';
            }
        $html .= '</div>';
        $script .= "jQuery(document).ready(function () { 
                var container".$key." = document.querySelector('.packery".$key."');
                var pckry = new Packery( container".$key.", {
                    // options
                    itemSelector: '.item',
                    gutter: 10
                });
            });";
    }
    echo $html;
    echo '<script>'.$script.'</script>';
}

?>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将Packery与多个容器一起使用?

来自分类Dev

将Packery与Rails一起使用

来自分类Dev

将伪TTY与Azure容器实例一起使用?

来自分类Dev

将多个计数与多个where子句一起使用

来自分类Dev

将R中的same()与多个向量一起使用

来自分类Dev

将地图与多个参数一起使用

来自分类Dev

如何将QVector与多个对象一起使用

来自分类Dev

将SQL聚合函数与多个联接一起使用

来自分类Dev

如何将AdControl与多个AdUnitId一起使用?

来自分类Dev

将单个JTextArea与多个UndoManager一起使用

来自分类Dev

如何将componentsSeparatedByString与多个对象一起使用

来自分类Dev

将clearTimeout与setTimeout的多个实例一起使用

来自分类Dev

将inputAccessoryView与多个UITextField和ViewController一起使用

来自分类Dev

将execl与多个子进程一起使用

来自分类Dev

如何将ArgumentOutOfRangeException与多个参数一起使用?

来自分类Dev

将ifeq与多个选项一起使用

来自分类Dev

Pyspark:将repartitionAndSortWithinPartitions与多个Critiria一起使用

来自分类Dev

将$ _GET与URL中的多个参数一起使用

来自分类Dev

AngularJS:将$ routeProvider与多个模块一起使用?

来自分类Dev

将TortoiseGit与多个GitLab帐户一起使用

来自分类Dev

将构造函数与多个文件一起使用Javascript

来自分类Dev

如何将Safeargs与多个navGraphs一起使用

来自分类Dev

将UIPageViewController与多个视图一起使用

来自分类Dev

将readHTMLTable与多个tbody一起使用

来自分类Dev

将ACL与多个默认组一起使用

来自分类Dev

将mv命令与多个通配符一起使用

来自分类Dev

将inputAccessoryView与多个UITextField和ViewController一起使用

来自分类Dev

将Varnish与多个名为vhost的apache一起使用

来自分类Dev

如何将didFinishPickingMedia与多个UIImage一起使用

Related 相关文章

  1. 1

    将Packery与多个容器一起使用?

  2. 2

    将Packery与Rails一起使用

  3. 3

    将伪TTY与Azure容器实例一起使用?

  4. 4

    将多个计数与多个where子句一起使用

  5. 5

    将R中的same()与多个向量一起使用

  6. 6

    将地图与多个参数一起使用

  7. 7

    如何将QVector与多个对象一起使用

  8. 8

    将SQL聚合函数与多个联接一起使用

  9. 9

    如何将AdControl与多个AdUnitId一起使用?

  10. 10

    将单个JTextArea与多个UndoManager一起使用

  11. 11

    如何将componentsSeparatedByString与多个对象一起使用

  12. 12

    将clearTimeout与setTimeout的多个实例一起使用

  13. 13

    将inputAccessoryView与多个UITextField和ViewController一起使用

  14. 14

    将execl与多个子进程一起使用

  15. 15

    如何将ArgumentOutOfRangeException与多个参数一起使用?

  16. 16

    将ifeq与多个选项一起使用

  17. 17

    Pyspark:将repartitionAndSortWithinPartitions与多个Critiria一起使用

  18. 18

    将$ _GET与URL中的多个参数一起使用

  19. 19

    AngularJS:将$ routeProvider与多个模块一起使用?

  20. 20

    将TortoiseGit与多个GitLab帐户一起使用

  21. 21

    将构造函数与多个文件一起使用Javascript

  22. 22

    如何将Safeargs与多个navGraphs一起使用

  23. 23

    将UIPageViewController与多个视图一起使用

  24. 24

    将readHTMLTable与多个tbody一起使用

  25. 25

    将ACL与多个默认组一起使用

  26. 26

    将mv命令与多个通配符一起使用

  27. 27

    将inputAccessoryView与多个UITextField和ViewController一起使用

  28. 28

    将Varnish与多个名为vhost的apache一起使用

  29. 29

    如何将didFinishPickingMedia与多个UIImage一起使用

热门标签

归档