开发者

jquery mouseover,mouseout and click

开发者 https://www.devze.com 2022-12-19 07:14 出处:网络
I have a sprite menu and I am using jquery for the mouseover, mouseout and click. The mouseover and mouseout work fine but I want is if I click and selected a menu then change the background position.

I have a sprite menu and I am using jquery for the mouseover, mouseout and click. The mouseover and mouseout work fine but I want is if I click and selected a menu then change the background position. It is now my problem, it doesn't work, maybe because once I click a menu then the mouseout still triggered.

here is my jquery

$(document).ready(function(){
    $(function(){
        $('#a a')
            .css( {backgroundPosition: "0 -33px"} )
            .mouseover(function(){
                $(this).stop().animate({backgroundPosition:"(0 0)"}, {duration:500})
            })
            .mouseout(function(){
 开发者_JS百科               $(this).stop().animate({backgroundPosition:"(0 -33px)"}, {duration:200, complete:function(){
                    $(this).css({backgroundPosition: "0 -33px"})
                }})
            })
    });
});

my css

h2  {clear:both;padding-top:20px;}
ul {list-style:none;margin:0;padding:0;}
li {float:left;width:120px;margin:0;padding:0;text-align:center;}
li a {display:block;padding:5px 10px;height:100%;color:#FFF;text-decoration:none;}
li a:hover, li a:focus {background-position:0 0;}
li a:active {background-position:-66px 0;}
#a a {background:url(<?php echo base_url() ?>images/tabs.png) repeat 0 -33px;}

my html

<h2>Top down</h2>
    <ul id="a">
        <li><a href="#">Home</a></li>
        <li><a href="#">About</a></li>
        <li><a href="#">Contact</a></li>        
    </ul>


Animating background-position is not possible with the current jQuery core unless you use the jQuery background position effect plugin - http://plugins.jquery.com/project/backgroundPosition-Effect

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号