【问题标题】:How can I get a list of images in a folder using javascript?如何使用 javascript 获取文件夹中的图像列表?
【发布时间】:2013-12-01 20:51:16
【问题描述】:

我有一个像这样的文件夹树:

  1. 项目文件夹
    • 图片
      • fjdkslajsd.jpg
      • fjowefwask.jpg
      • fweoifqadf.jpg
      • ...
    • 脚本
      • script.js
      • jquery.js
    • 样式表
      • styles.css
    • index.html

index.html 文件几乎只是链接到脚本和样式表,并包含一个 div 来保存我的内容。我想要做的是让 script.jsimg 文件夹中找到所有图像的名称并将它们放在一个列表中,以便我以后可以循环浏览一张一张地列出并显示图像。最终结果基本上看起来像一个幻灯片,不断循环浏览 img 文件夹中的图像并显示它们。

我希望这能解决您的任何问题,所以这是我的问题……我如何捕获包含 img 文件夹中图像名称的字符串列表?我已经知道如何循环浏览列表并显示图像,但我不知道如何处理获取列表。

【问题讨论】:

标签: javascript jquery html css slideshow


【解决方案1】:

除非您有某种服务器端接口,它为您提供表示项目文件夹/文件结构的可解析结构,否则您将无法在 javascript 中使用或处理此信息。

如果您的服务器上有可用的 PHP,您可以使用普通输出生成一个 javascript 数组:

<script type="text/javascript">
    var imageList=[<?php
        $dir='/projectdir/img/';
        $files = scandir($dir);
        foreach((array)$files as $file){
           if($file=='.'||$file=='..') continue;
           $fileList[]=$file;
        }
        echo "'".implode("','", $fileList)."'";
    ?>];
</script>

浏览器解析后,imageList 将包含给定文件夹中所有文件的数组。然后,您可以使用此数组进行进一步处理/处理。

【讨论】:

    【解决方案2】:

    您必须向服务器端脚本发出 ajax 请求,该脚本将为您提供来自任意目录(这可能很危险)或特别是图像目录(可能是处理它的更好方法)的文件列表。从服务器端脚本获得文件列表后,您可以使用 javascript 创建图像元素,并在准备好进行修改后将它们添加到 DOM。

    如果您使用的是 PHP,您也可以使用 PHP 将这些图像中的每一个添加到页面的适当位置,并为自己保存一个 ajax 请求。

    【讨论】:

    • 没错,我相信 Perl 和 Python 可以在标准的 Apache Web 服务器上做同样的事情。如果我声称一种语言做了一些它实际上没有做的事情,我倾向于只引用我曾经用来避免咬我脚的语言。
    猜你喜欢
    • 2013-12-14
    • 1970-01-01
    • 2021-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多