如何根据时间运行不同的脚本?

时间:2016-05-18 02:09:22

标签: javascript time

我是java-scripts和HTML的基础,所以我想问:我如何根据时间运行不同的脚本? 比如:从早上6点到晚上7点,做<script>..</script>做其他脚本。

希望我的问题很明确。

3 个答案:

答案 0 :(得分:0)

var hour = new Date().getHours(); // hour will get current hour like 0 to 23 switch(hour) { case '6': // code in this case will run if current time is in 6am to 7am alert('hi, it's in 6 a.m to 7 a.m now'); break; case '7': // any other hour // add your code you want to run between 7 - 8 am break; }

答案 1 :(得分:0)

您可以使用new Date().toLocaleString().match()RegExp /\d+(?=\:)/.split()RegExp /.*\s/

一起使用
var now = new Date().toLocaleString().split(/,/)[1].trim();

var curr = now.match(/\d+(?=\:)/), ampm = now.split(/.*\s/)[1];

if ((curr >= 6 && ampm === "AM") || (curr < 7 && ampm === "PM")) {
  // do stuff
}

答案 2 :(得分:0)

如果您希望页面跳转到所需位置,我相信您希望使用location.href而不是href。您还必须在处理页面后执行代码,以便已定义锚点。这可以通过将脚本放在正文的末尾或使用window.onload或document.onload来设置在加载页面功能后执行的方法来完成。在下列情况下,跳转由按钮触发。

<!DOCTYPE html>
<html>
<head>
<title>Using hour of day in Javascript</title>
<script>
function processDate() {
   var outField = document.getElementById("out");
   var date = new Date();
   var time = date.getHours();
   alert("Hour is " + time);
   outField.value = time;
   location.href="#5";
}
</script>
</head>
<body>
<p>See:</p>
<ul>
<li><a href="http://www.w3schools.com/js/js_dates.asp"
    target="_blank">http://www.w3schools.com/js/js_dates.asp</a></li>
<li><a href="http://www.w3schools.com/jsref/jsref_obj_date.asp"
    target="_blank">
    http://www.w3schools.com/jsref/jsref_obj_date.asp</a></li>
</ul>
<form>
<p><input type="button" onclick="processDate()" value="Show Date"></input></p>
<p><input type="text" id="out" size="50"></input></p>
</form>
<p><a name="5">This is point 5</a></p>
</body>
</html>