0
我有一个foreach循环,它使用一个变量数组来产生带有ajax调用的动态javascript。假设我有一个10个变量的数组,需要创建10个不同的JS脚本。这些脚本不应该一次执行,它们应该有至少1-2秒的延迟。但是,我无法用睡眠或等待来完成这项工作。这是我的代码:如何在foreach循环中输出javascript并进行睡眠或等待工作
<?php
foreach ($one as $two) {
$somevariable = $two['sth'];
?>
<script type="text/javascript">
$(document).ready(function() {
var somevariable = <?php echo json_encode($somevariable); ?>;
// JS code with ajax call, using somevariable
});
</script>
<?php
sleep(2); // doesn't work, everything is executed at once
wait(2); // doesn't work, everything is executed at once
}
?>
我在做什么错?如果我回复脚本,代码是否可以工作?我想避免这种情况,因为JS代码很长很复杂。
由于您的'sleep()'在PHP中,唯一发生的事情是将脚本发送到客户端需要更长的时间。 PHP在服务器上被解析,当它完成后,它被发送到javascript被解析的客户端。 –
为什么不这样做,反过来,使间隔xmlhttprequest而不是 – Ghost
你应该看看'setTimeout()' - 功能我的JavaScript。在这里阅读有关它:http://www.w3schools.com/jsref/met_win_settimeout.asp –