Javascript JS Gallery中XML文件中的动态内容仅在页面刷新时显示,而不是在第一次查看时显示
经过几天的搜索、调试和大量的尝试和错误,我终于对这个问题束手无策了 小背景:我使用的CMS有一个照片库选项,可以将“附加”到CMS中的图片库的XML文件导出。我不想使用内置的CMS照片库,因此选择了Galleria版本 无论如何,我现在有了新的图库,但我看到的问题是,当第一次加载页面时,图库不会显示。当我刷新或转到另一页,然后返回到图库时,它工作得非常好 我可能是错的(很可能是错的),但我认为问题是因为在Galleria脚本启动和加载之前没有加载图像,因此没有显示任何内容。我尝试了一些想法,但我的Javascript知识非常有限,下面的代码来自其他来源……这就是它工作的原因,我无法正确修改 谢谢Javascript JS Gallery中XML文件中的动态内容仅在页面刷新时显示,而不是在第一次查看时显示,javascript,jquery,Javascript,Jquery,经过几天的搜索、调试和大量的尝试和错误,我终于对这个问题束手无策了 小背景:我使用的CMS有一个照片库选项,可以将“附加”到CMS中的图片库的XML文件导出。我不想使用内置的CMS照片库,因此选择了Galleria版本 无论如何,我现在有了新的图库,但我看到的问题是,当第一次加载页面时,图库不会显示。当我刷新或转到另一页,然后返回到图库时,它工作得非常好 我可能是错的(很可能是错的),但我认为问题是因为在Galleria脚本启动和加载之前没有加载图像,因此没有显示任何内容。我尝试了一些想法,但我
<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>
$(函数(){
$.ajax({
键入:“GET”,
url:'/PhotoGallery.xml',//xml文件的地址
数据类型:“xml”,
成功:函数(xml){
$(xml).find('img').each(function(){
var location='/photo_gallery/';//用于存储库照片的文件夹
var url=$(this.attr('src');
var alt=$(this.attr('alt');
$('').html('').appendTo('.galleria list');
});
}
});
});
$(函数(){
Galleria.loadTheme('../gallery_files/Galleria.classic.min.js');
$(“#galleria”)。galleria({
回答:是的,
高度:0.70,
自动播放:5000,
图像边距:0,
灯箱:是的
});
});
默认情况下,ajax是异步的。另外,还不确定xml是否会在galleria之前回调。在下载xml后尝试设置galleria,或者简单地在ajax参考链接中添加“async:false”:非常感谢!根据我的测试,它现在似乎在第一页视图上工作,并且在多次刷新之后工作。这么简单的修复…我不相信,不是因为我理解你的解释意味着什么,也不是因为你链接的参考网站,但它是有效的。