0

次のコードを使用して、フォルダーから画像を動的に選択し、スライド ショーで表示しています。しかし、このコードは最初の画像のみを選択します...エラーの場所を教えてください...

PHP ファイル: 名前: test.php

<?php
 header("content-type: application/x-javascript");
    function returnimages($dirname=".") {
        $files = array();
        $curimage = 0;
         //valid image extensions
        $pattern="(\.jpg$)|(\.png$)|(\.jpeg$)|(\.gif$)";
        if($handle = opendir($dirname)) {
            while(false !== ($file = readdir($handle))) {
                if(eregi($pattern, $file)){
                    echo 'galleryarray[' . $curimage . '] = "' . $file . '";';
                    $curimage++;
                }
            }
           closedir($handle);
        }
        return($files);
    }
    //Define array in JavaScript returnimages()
    //Output the array elements containing the image file names
    echo 'var galleryarray = new Array();';
?>

HTML コードは次のとおりです。

<html>
    <head>
        <title></title>
        <script src="test.php"></script>
        <script type="text/javascript">
            var galleryarray = returnimages();
            var curimg = 0;
            function rotateimages(){
                //  var imagesDirectory = "pics/" + galleryarray[curimg];
                var imagesDirectory =galleryarray[curimg];
                document.getElementById("slideshow").setAttribute("src", imagesDirectory)
                curimg = (curimg < galleryarray.length - 1) ? curimg + 1 : 0
            }
            window.onload = function(){
                setInterval("rotateimages()", 2500)
            }
        </script>
    </head>
    <body>
        <img width="468" height="312" id="slideshow" src="Slide1.jpg">
    </body>
</html>
4

1 に答える 1

3

php実際に JavaScript で関数を呼び出そうとしていますreturnimages()。とにかくそれは不可能です。

于 2012-08-30T09:26:11.083 に答える