背景不变为红色

时间:2010-04-22 00:12:36

标签: jquery

http://removed.com/jquery/# 第一次玩jQuery,有点卡住了。我期待悬停时背景变为红色,但这不是出于某种原因。任何人都可以帮我一把吗?谢谢!

3 个答案:

答案 0 :(得分:4)

尝试在div.sidenavOff定义中移动ready的jQuery代码,就像这样

<script type="text/javascript">
    $(document).ready(function(){
        $("a").click(function(event){
            alert("Thanks for visiting!");
        });
        $("div.sidenavOff").mouseover(function(){
            $(this).removeClass().addClass("sidenavOver");
        }).mouseout(function(){
            $(this).removeClass().addClass("sidenavOff");       
        });
    });

</script>

答案 1 :(得分:0)

您需要在$(document).ready(function() {...块中调用.mouseover和.mouseout。正如您所知,当调用选择器$("div.sidenavOff")时,这些元素尚不存在,并且没有附加处理程序。将它们移动到document.ready将在元素加载后调用它们。

答案 2 :(得分:0)

你也可以像

那样做
$(document).ready(function(){
  $("div.sidenavOff").mouseover(
    function(){
      $(this).toggleClass("sidenavOver").toggleClass("sidenavOff",true);
    }
   )
 }
)

它具有与Jonathan的示例相同的功能,但编写代码的次数较少:)