php - 通过 JSON、JQUERY、PHP 的图像预加载器

标签 php jquery json

我试图通过 php 和 JSON 创建一个自动预加载器,我的原因是目前没有其他预加载器适合我的目的。我正在使用 php 版本 5.3.0 和 apache 版本 2.2.11 开发 WAMP 安装,并使用以下 php 代码:

$rootDir =  dirname(__FILE__).'/..';
$imgdir = opendir($rootDir.'/images/');
$i=0;

while ($file = readdir($imgdir))
{
if (($file != '.') && ($file != '..'))
{
$fileList[$i] = $file;
$i++;
}
}

$json=json_encode($fileList, JSON_FORCE_OBJECT);
die($json);

我的 Jquery 目前是内联/嵌入的(版本 1.4.2),如下所示:

$(document).ready(function(){
    $.ajax({
        type: "GET",
        url: "preload/reader.php",
        dataType: "JSON",
        success: function(data){
            alert(data);
        }
    });
});

警告框中有以下输出; {"0":"BlueHills.jpg","1":"deagle_descr.jpg","2":"mod.jpg"}

当我想对数据做任何其他事情时,问题实际上就开始了,页面永远不会完成加载,就像陷入了无限循环或其他什么东西一样。即使只是一个简单的语句,例如 document.write(data);页面一直处于加载状态,直到我在浏览器中点击“停止”。我对 JSON 还很陌生,请帮忙

最佳答案

  1. 使用 getJSON
  2. 在getJSON的回调函数中,开始向DOM添加标签,但默认隐藏
  3. 在需要时显示新图像

关于php - 通过 JSON、JQUERY、PHP 的图像预加载器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3482253/

相关文章:

PHP - 从 URL 下载文件

php - Guzzle 6 中的 GuzzleHttp\Event\SubscriberInterface 相当于什么?

javascript - 获取元素样式并将其分配给 vue.js 中的另一个元素

javascript - 未选择数组中的最后一项

php - 连接 2 个表后如何在 Codeigniter View 中使用过滤器

php - 如何使用 jQuery 制作发布数据的按钮

jquery - 将 JSON 数据附加到 POST 请求

javascript - 从 javascript for 循环创建 JSON 字符串

json - 如何在函数中实现泛型对协议(protocol)的条件一致性?

php - JSON 下拉列表未正确填充