Javascript 在完全加载之前,请隐藏图像
我试图隐藏我的砖石图像,直到页面完成加载,因为当前图像加载在屏幕左侧的长条带中,然后再组织它们自己 我似乎无法将容器隐藏起来,然后在其他所有内容加载后显示 以下是链接: 以下是我的代码片段(带有注释掉的代码,我尝试为隐藏/显示位实现这些代码):Javascript 在完全加载之前,请隐藏图像,javascript,jquery,wordpress,Javascript,Jquery,Wordpress,我试图隐藏我的砖石图像,直到页面完成加载,因为当前图像加载在屏幕左侧的长条带中,然后再组织它们自己 我似乎无法将容器隐藏起来,然后在其他所有内容加载后显示 以下是链接: 以下是我的代码片段(带有注释掉的代码,我尝试为隐藏/显示位实现这些代码): $(窗口).load(函数(){ var$container=$(“#砌体容器”); //初始化 $container.com({ //列宽:60, 排水沟:6, itemSelector:“.砌体项目” }); }) /* $(“#砌体容器”).hi
$(窗口).load(函数(){
var$container=$(“#砌体容器”);
//初始化
$container.com({
//列宽:60,
排水沟:6,
itemSelector:“.砌体项目”
});
})
/*
$(“#砌体容器”).hide();
$container.imagesLoaded(函数(){
$(“#砌体容器”).show();
})
*/
您应该在图像中包含您的砌体实例imagesLoaded
如下所示:
var $container = $('#masonry-container');
$container.imagesLoaded(function(){
$container.masonry({
itemSelector: '.masonry-item',
gutter: 6
});
});
你试过的东西我都不懂 但是有一个javascript库是“imagesLoaded”。 那会对你有帮助的 我是这样做的
// created a array with image and data
var elemar = [];
$.each(data, function(j,subData){
var img = document.createElement('img');
img.src = 'images.jpg';
item.appendChild( img );
elemar.push(item);
});
// loading div after image loaded
imagesLoaded(elemar).on( 'progress', function( imgLoad, image ) {
var item = image.img.parentNode;
container.appendChild( item );// container is an javascript , $('#containerdiv'), where all div will be publish
msnry.appended( item ); // msnry intializaion
});
});
为什么不直接调用包含元素的
imagesLoaded
?嘿,我是通过ajax获取数据的,所以首先我创建了dom元素,然后我插入了,b/c如果图像正在加载,我不想显示文本。嗯,这是一种有趣的方法。当我添加这个片段时,图像保持在左边的一行。编辑:我安装了imagesLoaded脚本,现在加载速度似乎更快了?一旦所有的图像都准备好了,有没有隐藏然后显示的方法?应该不会太快。也许你的图像只是被缓存了。默认情况下,加载时可以隐藏所有图像,但仍需要再次调用$container.mashise()
,以便正确调整.mashise项的大小。
// created a array with image and data
var elemar = [];
$.each(data, function(j,subData){
var img = document.createElement('img');
img.src = 'images.jpg';
item.appendChild( img );
elemar.push(item);
});
// loading div after image loaded
imagesLoaded(elemar).on( 'progress', function( imgLoad, image ) {
var item = image.img.parentNode;
container.appendChild( item );// container is an javascript , $('#containerdiv'), where all div will be publish
msnry.appended( item ); // msnry intializaion
});
});