本帖最后由 piovt25728 于 2014-11-11 11:51:55 编辑

解决方案 »

  1.   

    代表当前页面的class和hover的class 设成名称不一样,样式一样
      

  2.   


    不是,hover也是加active样式,当前页面所属菜单也是有个active样式!,但是不要影响现在有的样式!
      

  3.   


    不是,hover也是加active样式,当前页面所属菜单也是有个active样式!,但是不要影响现在有的样式!  <style>
        a{display:inline-block;width:50px;height:40px;}
        .active{background:#F00;}
        a:hover{background:#0f0;}
      </style>  
      <a href="#" class="active">aaaa</a><a href="#">bbbb</a><a href="#">cccc</a>
      

  4.   


    不是,hover也是加active样式,当前页面所属菜单也是有个active样式!,但是不要影响现在有的样式!  <style>
        a{display:inline-block;width:50px;height:40px;}
        .active{background:#F00;}
        a:hover{background:#0f0;}
      </style>  
      <a href="#" class="active">aaaa</a><a href="#">bbbb</a><a href="#">cccc</a>
    额,大哥,我是问怎么JQ实现?不是要您改我的html,而且不能用全局变量
      

  5.   

    后追加的样式名字为什么一定要和之前有的相同呢(active)
      

  6.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <style>
    .active{ border:#00F 1px solid; width:200px; height:20px; margin-top:2px;}
    </style>
    <script src="jquery-1.8.2.min.js"></script>
    <script type="text/javascript">
    $(function(){
    $("ul li").closest("li").hover(function(){
    $(this).css({"border":"1px solid #F00"});
    },function(){
    $(this).css({"border":"1px solid #00F"});
    })
    })
    </script>
    </head>
    <body>
    <ul>        
    <li class="active"><a href="javascript:;">监 控 台</a></li>        
        <li class="active"><a href="javascript:;">模 板 管 理</a></li>        
        <li class="active"><a href="javascript:;">周 报</a></li></ul>
    </body>
    </html>
      

  7.   


    $('ul li.active').siblings().hover(function(){$(this).addClass('active')},function(){$(this).removeClass('active')})应该再加个class
      

  8.   

    嗯,你这个思路是对的,如果我hover其他li的时侯,开始的那个active的li也remove掉呢?然后移开这几个li时,那个active又还原到之前的li,可以实现吗?
      

  9.   

    嗯,你这个思路是对的,如果我hover其他li的时侯,开始的那个active的li也remove掉呢?然后移开这几个li时,那个active又还原到之前的li,可以实现吗?(function($){
    var a=$('ul li');
    var ac=$('ul li.active');
    a.hover(function(){a.removeClass('active');$(this).addClass('active')},function(){a.removeClass('active');ac.addClass('active')})})($)
      

  10.   

    嗯,你这个思路是对的,如果我hover其他li的时侯,开始的那个active的li也remove掉呢?然后移开这几个li时,那个active又还原到之前的li,可以实现吗?(function($){
    var a=$('ul li');
    var ac=$('ul li.active');
    a.hover(function(){a.removeClass('active');$(this).addClass('active')},function(){a.removeClass('active');ac.addClass('active')})})($)
    额,不用全局变量存储原来.active的index();我的问题开始就有声明
      

  11.   

    嗯,你这个思路是对的,如果我hover其他li的时侯,开始的那个active的li也remove掉呢?然后移开这几个li时,那个active又还原到之前的li,可以实现吗?(function($){
    var a=$('ul li');
    var ac=$('ul li.active');
    a.hover(function(){a.removeClass('active');$(this).addClass('active')},function(){a.removeClass('active');ac.addClass('active')})})($)
    额,不用全局变量存储原来.active的index();我的问题开始就有声明
    没用全局变量,那个是局部的
      

  12.   

    嗯,你这个思路是对的,如果我hover其他li的时侯,开始的那个active的li也remove掉呢?然后移开这几个li时,那个active又还原到之前的li,可以实现吗?(function($){
    var a=$('ul li');
    var ac=$('ul li.active');
    a.hover(function(){a.removeClass('active');$(this).addClass('active')},function(){a.removeClass('active');ac.addClass('active')})})($)
    额,不用全局变量存储原来.active的index();我的问题开始就有声明
    没用全局变量,那个是局部的
    我的想法是不要在hover方法以外声明变量。。