javascript - 图像加载后显示 AJAX 内容

标签 javascript jquery ajax image load

我正在开发我自己的灯箱类型的 jquery 插件。一切正常,但我想隐藏加载的内容,直到图像通过 AJAX 调用加载到浏览器中。我发现了类似的帖子,并且我正在使用以下脚本,但 setTimeout 函数显示了内容,而不是 .load 函数。我是否正在努力实现不可能的目标?

$.ajax({
      url: 'meet/'+ pLoad + '.html',  
      success: function(data) {
        var imageCount = $(data).filter('img').length;
        var imagesLoaded = 0;
        $(data).hide()
         .appendTo('#zoom_inner')
         .filter('img')
         .load( function() {
          ++imagesLoaded;
          if (imagesLoaded >= imageCount) {
          $('#zoom_inner').children().show();
          }
          });
        setTimeout( function() { $('#zoom_inner').children().show() }, 5000 );
       }
    });

最佳答案

关于您的评论:

data 只是成功回调中的一个字符串 - 它是“html”,但它是一个字符串。

使其成为要使用的节点:

var $images = $(data); // i.e. turn <div><img /></div> into a div with an img as a child or whatever you got
var imageCount = $images.find('img').length;

很酷,是吧?

关于javascript - 图像加载后显示 AJAX 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2998238/

相关文章:

javascript - 在 Django 项目中使用 Ajax 的好指南?

javascript - Ember 仅适用于一页网站?

javascript - 为什么以及何时在 es6 模块中使用默认导出而不是命名导出?

javascript - 当在 AJAX、Jquery 中使用 GET 更新数据库时,如何反射(reflect)表上的更新

jquery - 如何使用 jquery-mobile 获取点击事件的位置/坐标?

javascript - $.ajax 在被调用时不是一个函数

jquery - Jquery 中使用 .on 停止事件冒泡

javascript - 如何从普通的 JavaScript 页面重定向到 Angular 6(微型网站到 Angular 6)?

javascript - 无法获取未定义或空引用的属性 'test'

jquery - jquery 问题和更新 css 背景图像未在 chrome 中加载