Html 返回相同随机值的Json调用

Html 返回相同随机值的Json调用,html,json,random,image,Html,Json,Random,Image,因此,我正在制作一个网站来显示一个文件夹中的图像,该文件夹附带了无休止的滚动功能。我几乎记下来了,唯一的问题是javascript中有一个函数调用“createImge”函数,该函数从php文件调用json,该文件选择一个随机图像并返回该图像的路径。问题是,当我在一行中多次调用createImage时,它返回相同的图像,php不会生成新的随机数来选择文件。关于如何让createImg()让php在连续多次调用时选择不同的随机数,有什么想法吗 index.html代码: <html>

因此,我正在制作一个网站来显示一个文件夹中的图像,该文件夹附带了无休止的滚动功能。我几乎记下来了,唯一的问题是javascript中有一个函数调用“createImge”函数,该函数从php文件调用json,该文件选择一个随机图像并返回该图像的路径。问题是,当我在一行中多次调用createImage时,它返回相同的图像,php不会生成新的随机数来选择文件。关于如何让createImg()让php在连续多次调用时选择不同的随机数,有什么想法吗

index.html代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Request json test</title>
<script src="http://code.jquery.com/jquery-1.5.js"></script>
<script type="text/javascript">

var totalLoad;
var loadedImg=new Array();
var maxLoaded=20;
var loadFirst=5;
var bufferLoad=3;
var imgSrc;

function loadTop(){ 
    for(var i=0;i<loadFirst;i++){
    createImg();
    }    
}
function remove(id)
{
    $('.'+id).remove();
}
function createImg(){

    $.getJSON('json-data.php', function(data) {
        alert("Return json-data"+data.img);
        $('#showdata').html($('#showdata').html()+"<div id="+getImageName(data.img)+" ><img width=\"450px\" src=\""+data.img+"\"></div><br/>");
    });

}
function getImageName(src){
var path = src;
var tarr = path.split('/');      // ["static","images","banner","blue.jpg"]
var file = tarr[tarr.length-1]; // "blue.jpg"
var data = file.split('.')[0];  // "blue"
return data;

}
$(document).ready(function(){

    $(window).scroll(function(){
        // grab the scroll amount and the window height
        var scrollAmount = $(window).scrollTop();
        var documentHeight = $(document).height();

        // calculate the percentage the user has scrolled down the page
        var scrollPercent = (scrollAmount / documentHeight) * 100;

        if(scrollPercent > 80) {
                for(var i=0;i<bufferLoad;i++){
                createImg();
            }
        }
        if(totalLoad>maxLoaded){

        }
    });
});

</script>

</head>
<body>
<div id="showdata" style="width:450px;margin-left:auto;margin-right:auto;">
<script type="text/javascript">  
loadTop();
</script>  </div>
</body>
</html>

提前非常感谢

您是否尝试过使用mt_rand()来代替它?是的,在一行中多次调用时,它仍然返回相同的json代码可能是您设定种子太快了,因此每个副本都会获得相同的自动种子(=时间)。尝试使用计数器显式地为每个实例设置种子:1、2、3、4,。。。不要将0用作种子!
$files = glob("Approved/*.*");
$no = sizeof($files)-1;

$random = rand(0, $no);
$imgHold=$files[$random];

$imgPull = array('img' =>$imgHold);
echo json_encode($imgPull);

?>