0

問題: トリガー後にホバー効果を維持するにはどうすればよいですか? マウスオーバーがリリースされた後も変わらないということですか?jQuery を使用しますか? 前もって感謝します!

HTML:

<div id="container">
  <ul id="nav">
        <li><a href="#">Home</a></li>
        <li><a href="#">About</a></li>
    </ul>
</div>

CSS:

body, div, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, img, form, fieldset, input, textarea, blockquote {
  margin:0; padding:0; border:0;
}

#container {opacity:0.6;
  background: url("http://static.hothdwallpaper.net/51b761ec35af526775.jpg") no-repeat bottom;
  background-attachment:fixed;
  opacity:0.8;
  height: 100px;
  width:310px;
  margin:0 auto;
  -webkit-transition:all 0.4s linear;

}
#container:hover{

  width:150%;
  opacity:1;}

ul#nav {
    width: 310px; margin:0 auto; text-align: center; 
}
    ul#nav li {
        float: left; list-style: none; 
    }
        ul#nav li a {
            display: inline-block; width: 85px; height: 77px; 
            padding: 72px 0 0 0; margin: 0 32px 0 32px;
            font: bold 16px Helvetica, Arial, Sans-Serif; text-transform: uppercase;
            color: #000000; text-shadow: 0 1px 3px #c4bda6; text-decoration: none;

            background: url('http://line25.com/wp-content/uploads/2011/animated-menu/demo/images/label.png') 0 -149px no-repeat; 
        }
            ul#nav li a:hover {
                background: url('http://line25.com/wp-content/uploads/2011/animated-menu/demo/images/label.png') 0 0 no-repeat;
                color: #eee9d9; text-shadow: 0 2px 3px #4c2222;
            }

http://jsfiddle.net/QnqZ7/

編集:たとえば、コンテナID(またはnav li a)に(最初に)ホバーすると、現在のように幅と不透明度のホバー効果がトリガーされますが、リリース後はすべてが変更されないままでなければなりません(150 % width, opacity 1)、その間、#nav li a のホバー効果を引き続きトリガーできるようにしたいと思います。ありがとうございました!

4

3 に答える 3

3

Jquery を使用できます。

$(document).ready (function () {
  $('#nav li a').hover (function (){
      $('#nav li a').removeClass('hover');
      $(this).addClass('hover');            
  });
})  

デモを見るhttp://jsfiddle.net/QnqZ7/10/

于 2013-11-01T15:26:06.243 に答える
0

$(this).toggleClass('hover') は短い

于 2013-11-01T21:11:41.533 に答える