添加h1标签时Lightgallery无法正常工作?

时间:2016-04-20 13:18:21

标签: javascript php html lightgallery

我正在使用Lightgallery并且一切正常,除非我在foreach循环中回显<h1>标记。当我删除它时,图库工作正常。

添加<h1>标记时唯一的问题是图像未加载。我只是看到预加载器永远加载。可能导致这种情况的原因是什么?

我的代码:

<div id="lightgallery" style="border-top: 2px solid rgb(230, 230, 230);">
    <?
    $dir = $_SERVER['DOCUMENT_ROOT'].'/images/PROJECTEN/';
    $folders = array_diff(scandir($dir), array('index.html', '.', '..'));

    function scan_dir($dir) {
        $ignored = array('.', '..', '.svn', '.htaccess','index.html');

        $files = array();
        foreach (scandir($dir) as $file) {
            if (in_array($file, $ignored)) continue;
            $files[$file] = filemtime($dir . '/' . $file);
        }

        arsort($files);
        $files = array_keys($files);

        return ($files) ? $files : false;
    }

    foreach($folders as $gallerypart){
        $nounderscore = str_replace('_', ' ', $gallerypart);
        $gallery .= '<h1>'.$nounderscore.'</h1>';
        foreach(scan_dir($_SERVER['DOCUMENT_ROOT'].'/images/PROJECTEN/'.$gallerypart.'/') as $entry) {

            $gallery .= '
                <a href="http://www.website.nl/images/PROJECTEN/'.$gallerypart.'/'.$entry.'">
                    <img class="galleryimg" src="http://www.website.nl/images/PROJECTEN/'.$gallerypart.'/'.$entry.'" />
                </a>';
        }

    }
    echo $gallery;
    ?>
</div>

这是破坏它的部分:

$gallery .= '<h1>'.$nounderscore.'</h1>';

1 个答案:

答案 0 :(得分:0)

我修复它而不是使用标准标记,我使用了一个选择器。

像这样:

<script type="text/javascript">
    $(document).ready(function() {
        $('#selector1').lightGallery({
            selector: '.item'
        });
    });
</script>

然后在循环内部我添加了以下代码:

$gallery .= '
<div class="item" data-src="http://www.website.nl/images/PROJECTEN/'.$gallerypart.'/'.$entry.'">
    <img class="galleryimg" src="http://www.website.nl/images/PROJECTEN/'.$gallerypart.'/'.$entry.'" />
</div>';