#id选择器不在jQuery中工作

时间:2013-06-08 12:46:39

标签: jquery-selectors

这可能是一件轻而易举的事,但我无法让这个简单的代码工作。感兴趣的部分报告如下。

<script>
    $("#link1").click(function(){
        $("#content").fadeOut(200);
    });
</script>

[....]

<nav>   
    <a class="navLink" id="link1">Link1</a>
    <a class="navLink" id="link2">Link2</a>
    <a class="navLink" id="link3">Link3</a>
    <a class="navLink" id="link4">Link4</a>
</nav>                   

<div id="container">    
    <div id ="content">            
        <p>This is a paragraph.</p>
    </div>        
</div>

想法是在点击Link1时使div“content”消失。但它不会发生。有趣的是,如果我替换脚本如下所示并为Link1添加一个onclick事件触发器,那么它就可以工作。

<script>
    function disappear(){
        $("#content").fadeOut(200);
    }
</script>

这表明#id选择器实际上有效(至少对于“内容”)。有没有人在我的代码中看到问题所在?

提前谢谢你, ETTORE

1 个答案:

答案 0 :(得分:1)

您的脚本出现在它所需的元素之前(#link1),因此它无法找到它。

您需要将脚本向下移动到页面下方,或将其包装在$(function() {...})