javascript - 添加更多 JavaScript = 停止工作

标签 javascript jquery

jQuery(function($) {
    function fixDiv() {
      var $cache = $('header'); 
      if ($(window).scrollTop() > 10) 
        $cache.css({'position': 'fixed', 'top': '0', 'background': 'rgba(0,0,0,0.8)', 'padding': '0'}); 

        //$('#top-menu a').css({'padding': '17px 20px'});
      else
        $cache.css({'position': 'absolute', 'top': '0', 'background': 'rgba(0,0,0,0)', 'padding': '20px 0'});
        //$('#top-menu a').css({'padding': '30px 20px'});
    }
    $(window).scroll(fixDiv);
    fixDiv();
});

这就是我目前所拥有的,我看到 var $cache = header 所以我想添加另一行,所以当它改变背景时它也会改变标题的字体大小..所以我现在有了

jQuery(function($) {
    function fixDiv() {
      var $cache = $('header'); 
      if ($(window).scrollTop() > 10) 
        $cache.css({'position': 'fixed', 'top': '0', 'background': 'rgba(0,0,0,0.8)', 'padding': '0'}); 
       $('h1').css({'font-size': '26px'});
      else
        $cache.css({'position': 'absolute', 'top': '0', 'background': 'rgba(0,0,0,0)', 'padding': '20px 0'});
        $('h1').css({'font-size': '36px'});
    }
    $(window).scroll(fixDiv);
    fixDiv();
});

我做错了什么?

最佳答案

多个语句需要大括号:

  if ($(window).scrollTop() > 10) 
  {
    $cache.css({'position': 'fixed', 'top': '0', 'background': 'rgba(0,0,0,0.8)', 'padding': '0'}); 
    $('h1').css({'font-size': '26px'});
  }
  else
  {
    $cache.css({'position': 'absolute', 'top': '0', 'background': 'rgba(0,0,0,0)', 'padding': '20px 0'});
    $('h1').css({'font-size': '36px'});
  }

正确缩进代码可以更明显地看出它不起作用的原因:

  if ($(window).scrollTop() > 10) 
     $cache.css({'position': 'fixed', 'top': '0', 'background': 'rgba(0,0,0,0.8)', 'padding': '0'}); 
  $('h1').css({'font-size': '26px'});
  else
     $cache.css({'position': 'absolute', 'top': '0', 'background': 'rgba(0,0,0,0)', 'padding': '20px 0'});
  $('h1').css({'font-size': '36px'});

(不仅错误而且无效 - else 是孤立的)。

关于javascript - 添加更多 JavaScript = 停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10163441/

相关文章:

javascript - 从输入写入 div

javascript - 切换和 jQuery 的问题

javascript - AJAX 获取请求在 iOS Safari 上有时会失败

javascript - 通过 Ajax POST 在数据库中将复选框值保存为 0 或 1

javascript - jQuery 用 inspinia 全部展开和折叠所有

javascript - 是否可以从 di.fm 中提取/提取投票数据和轨道 ID 并插入数据库(例如 MySQL)

javascript - 是否有 JavaScript 函数可以将通用文本框添加到 Gnome 扩展小程序中?

jquery - 禁用垂直滚动

javascript - 使用 jQuery 按第一个日期列对 html 表行进行排序

javascript - 具有轮询周期的不同 ajax 调用