JavaScript не работает при добавлении тега h1?

я использую Lightgallery и все работает, кроме случаев, когда я повторяю <h1> тег внутри цикла foreach. Когда я его удаляю, галерея работает нормально.

Единственная проблема, когда я добавляю <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

Решение

Я исправил это вместо того, чтобы использовать стандартную разметку, я использовал селектор.

Как это:

<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>';
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]