2

我有一个这样定义的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>

在 Firebug 控制台中,我键入以下内容来隐藏导航类:

$("#nav").hide()

但是当我运行它时,我收到以下错误消息:

TypeError: $("#nav") is null

$("#nav").hide()     with(_...e() }; (line 2)

nav 显然在那里,我什至可以在 Firebug 的 HTML 选项卡中看到它,我错过了什么?

谢谢

4

2 回答 2

4

你错过了 jQuery

添加

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

<head></head>标签之间。

于 2012-05-23T20:59:28.283 回答
1

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

从 id中删除#,它应该按预期为您提供 DOM 节点。或者将库加载为 jQuery :)

于 2012-05-23T21:05:42.313 回答