我是java-scripts和HTML的基础,所以我想问:我如何根据时间运行不同的脚本?
比如:从早上6点到晚上7点,做<script>..</script>
做其他脚本。
希望我的问题很明确。
答案 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>