我的导航栏不会被修复 - JS代码不会起作用

时间:2015-04-20 01:18:21

标签: javascript html css

这是错误:

  

未捕获的TypeError:无法设置null

的属性'innerHTML'

是的,我知道之前已经问过这个问题。

我已经阅读了所有类似的问题,试图为自己找到一个解决方案,但没有任何帮助。

之前问题的解决方案:

  1. 您有一个元素具有该ID - 检查
  2. 运行Javascript之前页面上的元素IS - 检查
  3. 你将JS的执行绑定到一个事件(前一个跟进),该事件发生在页面上的元素之后 - 检查(这意味着JS发生在用户做了某事之后,对吗?)
  4. 我尝试在body标签内部(最后)和body标签之外添加.JS文件,但都没有效果。
  5. 这些是我在问题中看到的所有解决方案(我了解当前的知识)并能够应用于我的代码。我可能忽略了一个解决方案(但仅仅因为我不理解它),因为我缺乏知识。

    我似乎无法找到解决方案。当我手动将固定头添加到#main-navigation时,它工作正常,但JS错误阻止它通过JS代码。

    如果有帮助,网站为http://desimara.com

    这是我的script.js文件:

    var $window = $(window);
    var $nav = $('#main-navigation');
    $window.scroll(function(){
        if ($window.scrollTop() >= 119) {
          $nav.addClass('fixed-header');
        }
        else {
          $nav.removeClass('fixed-header');
        }
    });
    
    var quotes = [
      "This guy knows what hes doing, huge vouch for him since he created a kickass site for me.<br><br><br><br>- Tappo Masa (peketus.lakutus@gmail.com)",
      "Huge vouch for this guy! Created a very nice looking website for me! This is a great service, especially because it is free. Highly recommend using this guy for small websites to be created. Thanks once again!<br><br>- Andrew Kilian (sacepk@gmail.com)"
    ];
    
    var counter = 0;
    $pID = "quoteText";
    
    setInterval(function () {
    if (counter < quotes.length) {
        document.getElementById($pID).innerHTML = quotes[counter];
        counter++;
      }
      else {
        counter = 0;
      }
    }, 4000);
    

    以下是带有#main-navigation的HTML:

    <nav id="main-nagivation">
            <ul>
              <a href="portfolio.php" id="portfolio" class="navigation"><li>Portfolio</li></a>
              <a href="about.php" class="navigation"><li>About</li></a>
              <a href="free.php" class="navigation"><li>Free Stuff</li></a>
              <a href="donate.php" class="navigation"><li>Donate</li></a>
            </ul>
          </nav>
    

    以下是包含JS文件的HTML:

    </body>
      <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script type="text/javascript" src="http://arrow.scrolltotop.com/arrow30.js"></script>
    <noscript>Not seeing a <a href="http://www.scrolltotop.com/">Scroll to Top Button</a>? Go to our FAQ page for more info.</noscript>
        <script type="text/javascript" src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
    <script type="text/javascript" src="script.js"></script>
        <script src="http://code.jquery.com/jquery.js"></script>
    </html>
    

1 个答案:

答案 0 :(得分:1)

您在HTML文件中的ID有拼写错误。 “主-NA的 GIV 通货膨胀”。

(抱歉没有足够的评论意见:()