我正在尝试将视频Feed仅在星期四晚上7点到晚上8点之间显示,因为这是播放实时Feed的时间。由于我不会进入的原因,我不允许在任何其他时间提起它。由于我是JavaScript的新手,我确信我做错了什么,但从我能够学到的东西来看,这就是我所拥有的。
var hour = getHours()
var day = getDay()
document.onload=function timechange() {
if day==4 && hour>19 && hour<21
document.getElementById(livefeed).innerHTML =
"Text one"
else
document.getElementById(livefeed).innerHTML =
"Text two"
}
这显然是示例文本,但大部分内容都会在页面上发生变化。我是否必须在HTML页面中添加某种功能才能使其正常工作?
答案 0 :(得分:0)
对于简单版本,几乎就是这样。 getDay()和getHours()在Date类上定义:
function shouldShowVideo() {
var currentDate = new Date(),
currentDay = currentDate.getDay(),
currentHour = currentDate.getHours();
return (currentDay == 4 && currentHour > 19 && currentHour < 20);
}
if (shouldShowVideo()) {
// do something
} else {
// do something else
}
但这种方法存在一个大问题。因为你在JS中这样做,视频将被加载到你的页面上,无论如何(因此人们可能会获得它的链接)。 此外,因为在onload事件触发后您正在执行JS,所以可能会有几秒钟显示视频。你可以做些什么来改进这个是在DOM Ready事件上运行这个代码(这里是jQuery帮助器:http://api.jquery.com/ready/)。
您最好的选择仍然是在服务器上移动此逻辑。这样,你不必担心这一切:没有JS参与。