检查是否在jquery插件启动之前加载了图像
例如,我有一个imageslider插件检查是否在jquery插件启动之前加载了图像,jquery,image,load,Jquery,Image,Load,例如,我有一个imageslider插件 <div class="images"> <img src="1.jpg"/> <img src="2.jpg"/> .... </div> $('.images').slider(); .... $('.images').slider(); 如何在插件(任何框架)中指定仅在加载所有图像时启动插件?是否类似于使用.load()方法,并在每次加载图像时将其添加到变量。然后,一
<div class="images">
<img src="1.jpg"/>
<img src="2.jpg"/>
....
</div>
$('.images').slider();
....
$('.images').slider();
如何在插件(任何框架)中指定仅在加载所有图像时启动插件?是否类似于使用.load()方法,并在每次加载图像时将其添加到变量。然后,一旦它达到图像总数,调用插件?但是我如何“暂停”插件呢
谢谢大家,但我确实在一个框架jquery插件中提到,在图像加载后,我将如何调用该插件
$(window).load(function() {
$('.images').slider();
});
$(窗口)。加载
将等待所有图像加载到页面上
如果您需要知道图像在该特定div中何时完成加载,请参阅此问题的答案:
$(窗口)。加载
将等待所有图像加载到页面上
如果您需要知道图像在该特定div中何时完成加载,请参阅此问题的答案:您可以在类似的系统上执行插件,因此: 这与更常用的
文档相反。ready
事件:
$(document).ready(function () {
$('.images').slider();
});
关键区别在于后者将在DOM加载完成时执行,而前者将等待DOM引用的所有资源加载完毕。请注意,如果另一个资源即使在图像准备就绪后也需要很长时间才能加载,则它将保留插件直到加载或超时。您可以在类似的服务器上执行插件,因此: 这与更常用的
文档相反。ready
事件:
$(document).ready(function () {
$('.images').slider();
});
关键区别在于后者将在DOM加载完成时执行,而前者将等待DOM引用的所有资源加载完毕。请注意,如果另一个资源即使在图像准备好后也需要很长时间才能加载,那么它将一直保留插件,直到加载或超时。您可以尝试此操作,在加载所有图像后初始化插件
$(function(){
var imageCount = $(".images img").length;
$(".images img").load(function(){
imageCount--;
if(imageCount == 0){
$(this).parent().slider();
}
});
});
您可以尝试在加载所有图像后初始化插件
$(function(){
var imageCount = $(".images img").length;
$(".images img").load(function(){
imageCount--;
if(imageCount == 0){
$(this).parent().slider();
}
});
});
检查该元素中的所有图像有点棘手,但可以完成
//gather the total number of images
var imageNum = $('.images').find('img').length;
var imagesLoaded = 0;
//setup a load event for each img
$('.images img').each(function(){
//load event will fire inconsistently in IE/FF so we create a new dom element but don't insert it
$('<img>').load(function(){
imagesLoaded++;
//all images are loaded so fire the slider
if(imagesLoaded == imageNum){
$('.images').slider();
}
//we set the new img to have the src of the current image
}).attr('src', $(this).attr('src'));
});
//收集图像的总数
var imageNum=$('.images').find('img').length;
var imagesLoaded=0;
//为每个img设置加载事件
$('.images img')。每个(函数(){
//加载事件将在IE/FF中不一致地触发,所以我们创建一个新的dom元素,但不插入它
$('
它有点笨重,但应该可以工作。检查该元素中的所有图像有点棘手,但可以完成
//gather the total number of images
var imageNum = $('.images').find('img').length;
var imagesLoaded = 0;
//setup a load event for each img
$('.images img').each(function(){
//load event will fire inconsistently in IE/FF so we create a new dom element but don't insert it
$('<img>').load(function(){
imagesLoaded++;
//all images are loaded so fire the slider
if(imagesLoaded == imageNum){
$('.images').slider();
}
//we set the new img to have the src of the current image
}).attr('src', $(this).attr('src'));
});
//收集图像的总数
var imageNum=$('.images').find('img').length;
var imagesLoaded=0;
//为每个img设置加载事件
$('.images img')。每个(函数(){
//加载事件将在IE/FF中不一致地触发,所以我们创建一个新的dom元素,但不插入它
$('
这有点笨重,但应该可以使用。这将等待页面上的所有图像。OP想知道中的图像何时加载。
图像已加载。谢谢,但我无法在插件中指定这一点吗?我不熟悉这个特定插件。看看他们的文档。Vibhu我的意思是,使用skeleton plugin generated,加载图像时我如何调用插件?我想你应该以另一种方式再次问这个问题。这将等待页面上的所有图像。OP想知道.images
中的图像何时加载。谢谢,但我无法在插件中指定此选项吗?我不熟悉这是一个特殊的插件。看看他们的文档。Vibhu我的意思是,在生成一个框架插件后,当加载图像时,我将如何调用该插件?我想你应该用另一种方式再次问这个问题。