使用 php、ajax、javascript 对页面上的 Flash 文件进行随机排序
Random order for flash files on page using php, ajax, javascript
我没有 Ajax 的经验,java 的经验很少,很多 sql 和 php 的经验,所以我可能会收到很多关于这个问题的评论但这里是。
最终我有4个flash swf文件需要在网站主页上随机旋转。所以我在网上找到了一个 shuffle javascript 函数并实现了它。现在我需要实现这个 ajax 函数(从这个 post )来根据数组中的数字更改 swf 文件,所以如果 tempArray = 4,3,1,2然后显示flash-4.php 3sec,然后变为flash-3.php 3sec,然后变为flash-1.php 3sec,等等
我的随机播放部分正在运行:
<script type="text/javascript">
Array.prototype.shuffle = function() {
var input = this;
for (var i = input.length-1; i >=0; i--) {
var randomIndex = Math.floor(Math.random()*(i+1));
var itemAtIndex = input[randomIndex];
input[randomIndex] = input[i];
input[i] = itemAtIndex;
}
return input;
}
var tempArray = [ 1, 2, 3, 4 ]
tempArray.shuffle();
// and the result is...
alert(tempArray);
//alert(tempArray[0]);
</script>
我有 ajax 替换内容的部分:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script type="text/javascript">
setInterval(function()
{
$.ajax( "flash-2.php" )
.done(function(res) {
document.getElementById("swfdiv").innerHTML = res;
})
},
3000);
</script>
但是我如何将它们放在一起根据数组值旋转?
为什么不是这样的?
var index = 0;
var tempArray = ...
setInterval(function()
{
index = (index + 1) % tempArray.length;
$.ajax( "flash-" + tempArray[index] + ".php" )
.done(function(res) {
document.getElementById("swfdiv").innerHTML = res;
})
},
3000);
我没有 Ajax 的经验,java 的经验很少,很多 sql 和 php 的经验,所以我可能会收到很多关于这个问题的评论但这里是。
最终我有4个flash swf文件需要在网站主页上随机旋转。所以我在网上找到了一个 shuffle javascript 函数并实现了它。现在我需要实现这个 ajax 函数(从这个 post
我的随机播放部分正在运行:
<script type="text/javascript">
Array.prototype.shuffle = function() {
var input = this;
for (var i = input.length-1; i >=0; i--) {
var randomIndex = Math.floor(Math.random()*(i+1));
var itemAtIndex = input[randomIndex];
input[randomIndex] = input[i];
input[i] = itemAtIndex;
}
return input;
}
var tempArray = [ 1, 2, 3, 4 ]
tempArray.shuffle();
// and the result is...
alert(tempArray);
//alert(tempArray[0]);
</script>
我有 ajax 替换内容的部分:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script type="text/javascript">
setInterval(function()
{
$.ajax( "flash-2.php" )
.done(function(res) {
document.getElementById("swfdiv").innerHTML = res;
})
},
3000);
</script>
但是我如何将它们放在一起根据数组值旋转?
为什么不是这样的?
var index = 0;
var tempArray = ...
setInterval(function()
{
index = (index + 1) % tempArray.length;
$.ajax( "flash-" + tempArray[index] + ".php" )
.done(function(res) {
document.getElementById("swfdiv").innerHTML = res;
})
},
3000);