2013-07-31 45 views
0

我有一个脚本,显示根据屏幕尺寸不同的内容,它看起来像这样:的JavaScript window.innerWidth条件语句

if ((window.innerWidth < 1250)) { 

//Do something 

} 

我想设定一个大于值以及一个小于值。我认为follwoing将工作:

if ((window.innerWidth < 1250 && > 750)) { 

//Do something 

} 

任何人都可以帮我吗?

+1

'如果(window.innerWidth <1250 && window.innerWidth> 750){' – Sergio

+0

你必须重复对比参数,因为你必须在innerWidth比较各单独的价值。 –

+0

检查答案..它将完全避免你所有的困惑..一个非常非常简单的解决方案! –

回答

4

关闭:

if (window.innerWidth < 1250 && window.innerWidth > 750) { 
+0

谢谢tymeJV! – danyo

5

当使用布尔运算符(&&||等),每一侧必须在其自身的一个完全有效的布尔表达式。 && > 750不是一个有效的表达式,因为> 750不能被评估为True或False。

你想要的是:

if (window.innerWidth < 1250 && window.innerWidth > 750) { 

由于两个window.innerWidth < 1250window.innerWidth > 750是有效的表达并能独立解决。

2

您需要在&&之后重复比较参数以检查新值。

使用这样的:

if (window.innerWidth < 1250 && window.innerWidth > 750) { 
1
function between(val, min, max) 
    { 
     return val >= min && val <= max; 
    } 

    if (between(window.innerWidth,750,1250)) { 
    //your code!!! 
    } 
+0

请注意,此代码的行为与最初发布的行为不同。 –

+0

我写这篇文章的原因是因为OP对设置条件感到困惑......而且这个代码的行为完全是接受答案行为的方式..100%gaurantee !!! –

+0

你100%保证'<'表现与<='完全相同?有趣。 –