我有一段代码,我已经解决了一个问题,但我不知道为什么我的解决方案有效,我发现它几乎和某些东西不起作用时一样令人沮丧。
基本上我有一个SVG视图框,我用JS调整了大屏幕的大小。
此SVG视图框仅在我网站的第一页上。
我有一个条件语句,如果第1页和窗口中的用户是1920px或更大,则视图框会调整大小。
我用嵌套的if语句实现了这个目的。
if (page1) {
if (window.innerWidth > 1919) {
// set SVG viewbox for screens larger than 1920px
} else {
// keep normal viewbox dimensions.
}
}
当我尝试这个时,我把它作为一个if语句做了两个条件,虽然这在第1页上有效,但当我不在第1页时,它在控制台中引发了一个错误。
当存在一个组合条件时,为什么它会在不是page1
的页面上抛出错误,而不是在条件嵌套时?我得到的错误基本上是说SVG元素不存在。我很困惑。
if (page1 && window.innerWidth > 1919) {
// set SVG viewbox for screens larger than 1920px
} else {
// keep normal viewbox dimensions.
}
答案 0 :(得分:1)
考虑代码的含义:在第一个版本中,如果 page1
,则可以更改大小或保持默认大小。如果不是 page1
,则 。
在第二种情况下,如果它是page1
并且窗口很大,则使用大视图框。如果
他们不一样。