经过数天的搜索、调试和大量的试验和错误,我终于在我的智慧结束了这个问题。
一点背景知识:我使用的 CMS 有一个照片库选项,可以将“附加”到 CMS 库中的图像的 XML 文件导出。我不想使用内置的 CMS 照片库,因此选择了 Galleria 版本。
无论如何,我现在有新的画廊工作,但我看到的问题是第一次加载页面时画廊没有显示。当我刷新或转到另一个页面然后返回图库时,它可以完美运行。
我可能是错的(很可能是错的),但我认为问题是由于在 Galleria 脚本启动和加载之前没有加载图像,因此没有任何显示。我尝试了一些想法,但我的 Javascript 知识非常有限,下面的代码来自其他来源......这就是它工作的原因,我无法正确修改。
谢谢。
<script>
$(function () {
$.ajax({
type: 'GET',
url: '/PhotoGallery.xml', //address of xml file
dataType: 'xml',
success: function(xml) {
$(xml).find('img').each(function() {
var location = '/photo_gallery/'; //Folder that container photos for gallery
var url = $(this).attr('src');
var alt = $(this).attr('alt');
$('<li></li>').html('<img src="'+location+''+url+'" data-description="'+alt+'" data-link="'+location+''+url+'"/>').appendTo('.galleria-list');
});
}
});
});
</script>
<script>
$(function(){
Galleria.loadTheme('../gallery_files/galleria.classic.min.js');
$('#galleria').galleria({
responsive: true,
height: 0.70,
autoplay: 5000,
imageMargin: 0,
lightbox: true
});
});
</script>