如果一个功能中的条件不起作用,则会出现多个

时间:2019-01-20 20:53:16

标签: javascript html

这是我的JS代码,请查看

function showLater1() {
    if ((vidos.currentTime >= 30) && (vidos.currentTime <= 34)) {
        lay.style.opacity = "1";
        content.style.opacity = "0";
        controls.style.opacity = "0";
    } else {
        content.style.opacity = "1";
        controls.style.opacity = "1";
    }

    if ((vidos.currentTime >= 90) && (vidos.currentTime <= 94)) {

        lay.style.opacity = "1";
        content.style.opacity = "0";
        controls.style.opacity = "0";
    } else {
        content.style.opacity = "1";
        controls.style.opacity = "1";
    }

    if ((vidos.currentTime >= 105) && (vidos.currentTime <= 109)) {

        lay.style.opacity = "1";
        content.style.opacity = "0";
        controls.style.opacity = "0";
    } else {
        content.style.opacity = "1";
        controls.style.opacity = "1";
    }

}

只有一种if条件时,它运行良好。但是,当添加3时,它将不起作用。

1 个答案:

答案 0 :(得分:0)

除非您的else在105到109之间,否则它将始终使用currentTime块。

让我们假设您的content.style.opacity = "0";为93。它从第二个if条件开始设置else。但是,然后控制转到第三个function showLater1() { if ((vidos.currentTime >= 30 && vidos.currentTime <= 34) || (vidos.currentTime >= 90 && vidos.currentTime <= 94) || (vidos.currentTime >= 105 && vidos.currentTime <= 109)) { lay.style.opacity = "1"; content.style.opacity = "0"; controls.style.opacity = "0"; } else { content.style.opacity = "1"; controls.style.opacity = "1"; } } 条件。

您可以将其简化为:

{{1}}