Jquery 在加载页面之前,将div替换为loading.gif,等待3秒钟,删除加载gif并显示div

Jquery 在加载页面之前,将div替换为loading.gif,等待3秒钟,删除加载gif并显示div,jquery,html,css,Jquery,Html,Css,我有一个动态构建的select下拉列表,因此我有一个setTimeout来在3秒钟后更改所选选项,这样select可以先加载,然后我可以更改它。但是我想隐藏选择并显示正在加载的gif,在3秒钟后显示选择并强制显示选项 下面是一个JSFIDLE,显示了我取得的成绩: 我正在使用setTimeout在3秒后进行更改,效果非常好: setTimeout(function () { $('#txtShipAddress>option:eq(0)').prop('selected', tru

我有一个动态构建的select下拉列表,因此我有一个setTimeout来在3秒钟后更改所选选项,这样select可以先加载,然后我可以更改它。但是我想隐藏选择并显示正在加载的gif,在3秒钟后显示选择并强制显示选项

下面是一个JSFIDLE,显示了我取得的成绩:

我正在使用setTimeout在3秒后进行更改,效果非常好:

setTimeout(function () {
    $('#txtShipAddress>option:eq(0)').prop('selected', true);
}, 3000);
如何在手之前添加加载gif,运行setTimeout,然后显示它并隐藏和加载gif?下面是一个例子,gif与使用的内容无关:

我添加了一个img标签并隐藏了select

gif不会加载到小提琴中,但会加载图像,然后选择


请选择一个
#1    
#2    
#3    
#4    
自由格式地址

我使用了与@Kosch非常相似的结构

我的答案是使用确保select在尝试打开脚本之前先在那里

$(文档).ready(函数(){
$('#txtShipAddress').hide();
setTimeout(函数(){
$('#txtShipAddress>选项:eq(0)”.prop('selected',true);
$('#txtShipAddress').show();
$(“#加载程序”).hide();
}, 3000);
})

请选择一个
#1    
#2    
#3    
#4    
自由格式地址

为什么不直接使用文档就绪事件?