【发布时间】:2019-02-14 09:11:31
【问题描述】:
在 javascript 和 php 上有一个带有“walkin”时钟的脚本(我需要服务器端时间 - 这很重要),但它会停止并且在刷新页面之前不计算在内。我做错了什么,请帮忙。谢谢。
<?php $Hour = date("H");
$Minute = date("i");
$Second = date("s");
$Day = date("d");
$Month = date("m"); ?>
<script type="text/javascript">
function clock() {
var d = new Date();
var month_num = d.getMonth();
var day = d.getDate();
var hours = <?php echo $Hour;?>;
var minutes = <?php echo $Minute;?>;
var seconds = <?php echo $Second?>;
month=new Array("января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря");
if (day <= 9) day = "0" + day;
if (hours <= 9) hours = "0" + hours;
if (minutes <= 9) minutes = "0" + minutes;
if (seconds <= 9) seconds = "0" + seconds;
date_time = "Today - " + day + " " + month[month_num] + " " + d.getFullYear() + " y. Now - "+ hours + ":" + minutes + ":" + seconds;
if (document.layers) {
document.layers.doc_time.document.write(date_time);
document.layers.doc_time.document.close();
} else document.getElementById("doc_time").innerHTML = date_time;
setTimeout("clock()", 1000);}
</script>
<span id="doc_time">Date & time</span>
<script type="text/javascript">clock();</script>
【问题讨论】:
-
什么是
document.layers?这是一些元素 ID? -
另外,如果您已经在 PHP 中定义了
var d = new Date(); var month_num = d.getMonth();,为什么还要使用它?var day = d.getDate();也一样。为什么要混合使用 JS 和 PHP -
@RokoC.Buljan...是的,有 ID 元素。我看到了一个错误。
-
不要使用
window.layers来定位 DOM 元素 (ID) 一旦有人或您自己引入全局var layers = "foo",您将失去对元素的控制。请改用document.getElementById("layers");或慢得不明显的document.querySelector("#layers")
标签: javascript php jquery time clock