我有以下问题。
如果我点击图标,我有一个显示图像的Web应用程序。
$('#ModalArtImage img').load(function(){
$('#ModalArtImage').css('visibility','visible').zIndex(9999);
});
这很好。
要关闭刚刚开启的DIV(Imagecontainer),我使用此
$('.imgWindow').on('click', function(){
$(this).parent().css('visibility','hidden');
});
.imgWindow
是总窗口(Imagecontainer)。
如果我关闭Imagecontainer并再次按下图标,则图像已经加载
首次点击,它无法访问.load()
,因此不再显示imagecontainer。
我使用.load()
的原因是,我不想在应该显示的图像完全加载之前显示图像容器。所以我尝试通过.load('img')
检查它实际上是什么。
有没有办法解决这个问题?
修改
现在解决这个问题:
if( $('#ModalArtImage img').prop('complete') )
{
$('#ModalArtImage').css('visibility','visible').zIndex(9999);
}
else
{
$('#ModalArtImage img').load(function(){
$('#ModalArtImage').css('visibility','visible').zIndex(9999);
});
}
thx to sahbeewah
答案 0 :(得分:2)
complete
个元素上有一个img
属性,用于显示图片是否已完成加载。
var showImage = function() {
$('#ModalArtImage').css('visibility','visible').zIndex(9999);
};
var $img = $('#ModalArtImage img');
if ($img.prop('complete')) {
showImage();
} else {
$img.load(showImage);
}