Javascript 如何在firebug命令中选择div id?

Javascript 如何在firebug命令中选择div id?,javascript,jquery,syntax,firebug,Javascript,Jquery,Syntax,Firebug,我的html定义如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> ... </head> <body> <div id="nav"> <a href="/"&g

我的html定义如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
...
</head>    
<body>
<div id="nav">
    <a href="/">home</a> |
    {% if user.is_authenticated %}      
        <a href="/save/">submit</a> | <a href="/user/{{ user.username}}/"{{ user.username }}</a> | <a href="/logout/">logout</a>
    {% else %}
          <a href="/login">login</a> | <a href="/register/">register</a>    
    {% endif %}
</div>
</body>
</html>
但当我运行它时,会收到以下错误消息:

TypeError: $("#nav") is null

$("#nav").hide()     with(_...e() }; (line 2)
nav显然在那里,我甚至可以在Firebug的HTML选项卡中看到它,我缺少了什么

谢谢你错过了jQuery


在标记之间。

看起来您没有加载任何库,例如jQuery,并且正在使用Firefox版本的$,该版本被定义为document.getElementById的快捷方式

从id中删除,它将按预期为您提供DOM节点。
或者以jQuery的形式加载库:

首先,nav id不是类。其次,您没有展示如何连接jquery。在console中只执行$时会得到什么?您能够选择其他元素吗?例如:$'a'在这种情况下,他不会得到$is undefined吗?我只是在本地测试了它,运行$which会导致'TypeError:$which为null。+1你说得对!他一定是错过了jQuery。如果不是的话,可能是过度编写了$,但我怀疑这里的情况是这样的。$实际上是document.getElementById的快捷方式,但却是Firebug的快捷方式,而不是Firefox的快捷方式。
TypeError: $("#nav") is null

$("#nav").hide()     with(_...e() }; (line 2)
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>