javascript - Jquery ajax 导航,等待图像加载的更好方法?

标签 javascript jquery ajax wordpress

我在这个网站上有 ajax 导航,并且有一个预加载器黑点显示 4 秒然后消失。有没有更好的方法让它等待至少第一个图像或全部加载?

这是我的网站:http://www.joe-tsao.com/

这是预加载器的代码

var id = jQuery(this).parent().attr('data-id');
var ajaxurl = admin_ajax.admin_url + 'admin-ajax.php';
var data = {
  'action': 'hb_load_page',
  'id': id
};
// since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php
jQuery.post(ajaxurl, data, function(html) {
  jQuery('.page-details').html('<div class="row">' + html + '</div>');
  setTimeout(function() {
    jQuery('.hb-loader').hide();
  }, 4000);
});

最佳答案

您可以使用.done方法,如官方文档所示:

jQuery.post(ajaxurl, data, function(html) {
    jQuery('.page-details').html('<div class="row">' + html + '</div>');
}).done(function(data){
    jQuery('.hb-loader').hide();
});

https://api.jquery.com/jquery.post/#jQuery-post-url-data-success-dataType

关于javascript - Jquery ajax 导航,等待图像加载的更好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41383193/

相关文章:

jquery - extlib 中的动态内容控制出问题了

javascript - 使用基于属性的模型的 get 方法进行 stub

javascript - 固定位置菜单修改指导

jquery - 我想使用 ajax 重定向到下一页,但它可以工作

javascript - 获取输入值并生成多个文本区域并在那里设置值

jQuery,通过ajax发送密码?

javascript - 如何输出php?

javascript - 通过 Symfony2 Controller 将记录从数据库中提取到 javascript

javascript - 聚焦时更改表单样式

javascript - Bootstrap 4 datetimepicker - 如何在发送值之间显示不同的日期格式?