我正在尝试设置一个if / else语句,如果一个类存在,则var num
将等于100,如果该类不存在,那么var num
将等于55. {{1然后用于了解屏幕将偏移的像素数。任何帮助将不胜感激,因为Javascript是我的弱点之一。
num
答案 0 :(得分:0)
你不需要额外的括号。另外,只需检查.length
以查看元素是否存在。这是主观的,但IMO使它更容易阅读。
if ( $(".affix-top").length ) {
num = 100;
} else {
num = 55;
}
答案 1 :(得分:0)
你有{不属于的地方
if (($(".affix-top")[0]){) {
应该是
if (($(".affix-top")[0])) {
答案 2 :(得分:0)
这很难理解。
if (($(".affix-top")[0]){) {
num = 100;
} else {
num = 55;
}
可以简化为此,因为匹配的任何内容都是 true 。
var num = $(".affix-top").length ? 100 : 55;
如果脚本在HTML页面的其余部分加载之前运行,那将无效。
<script type="application/javascript"> $(".affix-top").length > 0; // false </script>
<div class="affix-top"></div>
<script type="application/javascript"> $(".affix-top").length > 0; // true </script>
所以将所有内容都包装在jQuery ready块中。
jQuery(document).ready(function(){
var num = $(".affix-top").length ? 100 : 55;
//....... insert more code here
});