问题描述
我确定这是一个愚蠢的逻辑错误,但我一直无法看到我做错了什么。 当使用除1024以外的任何值时,将触发正确的if语句,由于某种原因,不满足1024条件。 提前致谢!
var width = 1024; //screen.width;
var height = 768; //screen.height;
var subpageModifier;
if (width > 360 && width < 767) {
subpageModifier = .28;
};
if( width > 767 && width < 800){
subpageModifier = 0.15;
};
if (width > 800 && width < 961) {
subpageModifier = .15;
};
if (width > 961 && width >1135){
subpageModifier = 0.3;
};
if (width >1135 && width < 1535){
subpageModifier = 0.15;
};
注意:如果有帮助,我正在使用AngularJS
1楼
(width > 961 && width >1135)
Second >
应该是<
。
(width > 961 && width <1135)
PS:使用if-else
,如果找到匹配项,则无需检查所有条件
2楼
if (width > 961 && width >1135){
subpageModifier = 0.3;
};
应该小于1135:
if (width > 961 && width < 1135){
subpageModifier = 0.3;
};
3楼
代替
if (width > 961 && width >1135){
采用:
if (width > 961 && width < 1135){
理想情况下,所有内容都应为:
var width = 1024; //screen.width;
var height = 768; //screen.height;
var subpageModifier;
if (width >= 360 && width <= 767) {
subpageModifier = .28;
}else if( width > 767 && width <= 800){
subpageModifier = 0.15;
}else if (width > 800 && width <= 961) {
subpageModifier = .15;
}else if (width > 961 && width <= 1135){
subpageModifier = 0.3;
}else if (width >1135 && width <= 1535){
subpageModifier = 0.15;
}else{
//do something
}
4楼
有3个更新。
- if语句后不应有分号。
- 对于以上条件,应使用if-else。
-
您的
if (width > 961 && width >1135){
对于第二个条件有问题。
5楼
这是您的问题:
if (width > 961 && width > 1135){
subpageModifier = 0.3;
};
两者都是>符号