-2

我试图找到制作服务器端幻灯片的最佳方法,程序将从名为 /inviteuploads 的文件夹中获取图片,并在幻灯片中显示该文件夹的内容(该文件夹将只包含图像)。我很乐意使用 Javascript、HTML、PHP 或您建议的任何其他内容。也许这甚至不可能,但请告诉我!
我还看到了这篇文章:How to create dynamic video/slideshow from pictures in PHP 但这并没有真正回答我的问题,我需要从文件夹中获取上传并将它们显示在幻灯片中。此外,我不只是想使用 php,我对任何其他建议的语言都持开放态度。
谢谢!

4

2 回答 2

3

使用全局函数。

请参阅:使用 PHP 列出目录中的所有图像

现在使用图像路径制作幻灯片。

于 2013-04-13T21:27:42.953 回答
1

代码在 asp.net 中...动画需要 jquery 库

我正在使用 scriptmanager 的 pagemethods 属性访问文件夹“inviteuploads”中存在的图像,然后将它们显示在 div 容器中...返回值将包含由“\u000d”分隔的图像的位置...我正在使用淡入淡出和淡出效果..您可以使用您选择的任何效果:)

见下面的代码:

服务器端代码

[System.Web.Script.Services.ScriptMethod, System.Web.Services.WebMethod]
public static string slideshow()
{
    string filename = string.Empty;

    try
    {
        string[] Files = Directory.GetFiles(HttpContext.Current.Server.MapPath("inviteuploads"));

        for (int i = 0; i < Files.Length; i++)
        {
            filename += "inviteupload/" + Path.GetFileName(Files[i]) + "\u000d";
        }
    }
    catch (Exception ex)
    {
    }
    return filename;
}

客户端代码

 function slideshow() {

        PageMethods.slideshow(successslideshow, failureslideshow);

        function successslideshow(msg) {
            var arr = msg.split("\u000d");
            var i = 0;

            for (j = 0; j < (arr.length - 1); j++) {
                $("#divslideshow").append("<img id=imgslideshow_" + j + " src=" + arr[j] + " width=700px height=700px style='display:none; max-height: 700px; max-width: 700px;' />");
            }

            $("#imgslideshow_" + i).fadeIn();
            setInterval(function () {
                $("#imgslideshow_" + i).fadeOut(function () {
                    i++;
                    if (i <= (arr.length - 2)) {
                        $("#imgslideshow_" + i).fadeIn();
                    }
                    else {
                        i = 0;
                        $("#imgslideshow_" + i).fadeIn();
                    }
                });
            }, 6000);
        }

        function failureslideshow(msg) {
        }
    }
于 2013-04-13T21:44:16.863 回答