【问题标题】:jQuery Animation on hover a lijQuery Animation on hover a li
【发布时间】:2012-05-13 10:52:19
【问题描述】:

我想在悬停时有动画

  • 应从顶部滑动,鼠标移出时应滑动顶部。 我已经做了所有,但有一个小问题。 请查看我的演示here

    我的代码是 CSS

        #nav{width:200px;
    height:60px;
    background:#096;
    list-style:none;
    } 
    
     #nav li
     {
         width:200px;
         height:60px;
         float:left;
         position:relative;
    
    }
    
         #nav li a
         {
             width:200px;
             height:50px;
             background:#09F;
             color:#000;
             display:block;
             position:relative;
             margin:0;
             z-index:100;
    
             }
    
             #nav li a:hover
             {
                 color:#fff;
                 }
    
             #nav li .hover
             { width:200px;
             height:50px;
             background:#000;
             color:#0FF;
            display:none;
           background-position:0 0;
           position:absolute;
           top:0;
             margin:0;
             z-index:0;
             opacity:0.9;
    
                 }
    

    脚本

    $(document).ready(function()
     {    
      $('#nav li a').append('<div class="hover">');
    
      $('#nav li a').hover(function (){
          $('.hover').stop(true, true).slideDown('1000');    
    
            }, 
    
            //Mouseout, fadeOut the hover class
            function() {
    
                $('.hover').stop(true, true).slideUp('1000');   
    
        }).click (function () {
    
            //Add selected class if user clicked on it
            $(this).addClass('selected');
    
    
          });
    });
    

    HTML

    <ul id="nav">
    
       <li><a href="index.html">Home</a></li>
    
    
      </ul>
    

    但我只查看 .hover div 正在滑动,但我的主页文本没有查看。我还添加了 z-index 到标签,但是在幻灯片工作时也没有查看文本。

    请帮我整理一下。 提前感谢大家。

  • 【问题讨论】:

      标签: jquery animation mouseover jquery-hover


      【解决方案1】:

      z-index: -1 设置为.hover。它会解决问题。

      演示: http://jsfiddle.net/DSusn/2/

      并注意您的fadeInfadeOut 电话。如果您需要将速度设置为毫秒数,它的参数应该是一个整数,即不带引号fadeIn(1000)

      【讨论】:

      • 感谢 VisionN 我已经做到了。但我在 IE 中看到它不起作用。您能否建议如何为 IE 额外编写代码,以便它在 IE 中正常工作。
      • 嗯。它在 IE 中应该可以正常工作。我确实有 IE9,它运行良好。
      • 是的,我已经解决了这个问题。我所做的只是改变了脚本 $('#nav li a').append('
        ');和 $(this).children('div').stop(true, true).fadeIn('1000');在 IE 中查看的问题我已经看到它在上传到我的服务器时已解决。但是在本地浏览器中工作时,它在 IE 中不起作用。我不知道为什么?您可以在此链接中看到它amitabha.in/mock/animate/index2.html
      • 嗯。 amitabha.in linbk 似乎没有打开。但是,在您更新的小提琴中,您仍然拥有z-index: 0
      • 抱歉更新的小提琴我提到错了你可以在这里查看jsfiddle.net/amitabhaghosh197/DSusn/5
      猜你喜欢
      相关资源
      最近更新 更多
      热门标签