Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ImageLoader显示的时间不超过1秒_Jquery - Fatal编程技术网

Jquery ImageLoader显示的时间不超过1秒

Jquery ImageLoader显示的时间不超过1秒,jquery,Jquery,我正在使用jquery显示一个图形,加载它需要6到7秒,所以在这段时间内我必须显示图像加载程序。在这种情况下,图像加载程序必须在图形加载之前至少显示5秒,但其显示时间仅为1秒 JS: $(函数(){ /**图像加载器显示一秒钟*/ $('#graph').html(''); $('#graph').load(函数(){ //图形数据 }); }); HTML: $(文档).ready(函数(){ $('#graph').html('')//图像加载程序显示 setTimeout(函数()

我正在使用jquery显示一个图形,加载它需要6到7秒,所以在这段时间内我必须显示图像加载程序。在这种情况下,图像加载程序必须在图形加载之前至少显示5秒,但其显示时间仅为1秒

JS:

$(函数(){
/**图像加载器显示一秒钟*/
$('#graph').html('');
$('#graph').load(函数(){
//图形数据
}); 
}); 
HTML:


$(文档).ready(函数(){
$('#graph').html('')//图像加载程序显示
setTimeout(函数(){
$('#graph').html('Loaded'))
},5000);
}); 
$(文档).ready(函数(){
$('#graph').html('')//图像加载程序显示
setTimeout(函数(){
$('#graph').html('Loaded'))
},5000);
}); 
图的内容立即被.load()方法替换。我建议您创建一个loader div,例如
.graphLoader
,然后将图形数据加载到一个隐藏的
#graph
div中,然后在加载完成的同时取消隐藏
#graph

下面是一个关于JSFIDLE的工作演示

CSS:

HTML:

#graph的内容立即被.load()方法替换。我建议您创建一个loader div,例如
.graphLoader
,然后将图形数据加载到一个隐藏的
#graph
div中,然后在加载完成的同时取消隐藏
#graph

下面是一个关于JSFIDLE的工作演示

CSS:

HTML:


谢谢你的回答。我不能在这里使用setTimeout函数,因为如果网络速度慢,图形可能需要10到15秒以上。谢谢你的回答。我不能在这里使用setTimeout函数,因为如果网络速度慢,图形可能需要10到15秒以上的时间。
$(function () {
    /** image loader displaying for a sec */
    $('#graph').html('<img src="images/loader.gif">');      

    $('#graph').load(function() {
       //data of graph
    }); 
}); 
<div id="graph"></div>
$(document).ready(function(){ 
    $('#graph').html('<img src="images/loader.gif">'); // image loader displaying
    setTimeout(function(){ 
        $('#graph').html('Loaded')
    },5000);
}); 
.graphLoader {
    display:block;
}
#graph {
    display:none;
}
<div class="graphLoader">Graph loading...</div>
<div id="graph"></div>
$(document).ready(function () {
    $("#graph").load("someGraphURL", function () {
        $('#graph').toggle();
        $('.graphLoader').toggle();
    });
});