时间与时间日期相关的页面内容

时间:2015-02-14 01:22:10

标签: javascript

我正在尝试将视频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页面中添加某种功能才能使其正常工作?

1 个答案:

答案 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参与。