我只是想把.icon转移到右边。试图通过位置()的数量来动画.icon。左
我的代码无效,我不知道为什么。我打赌它非常简单!!
<script>
$("li.menu-item").hover(function(){
var pos = $(this).position().left;
$(".icon").animate({left : pos+'px'}, 1500 );
});
</script>
</head>
<body>
<div id="menu-wrapper">
<ul id="main-nav">
<li class="menu-item"><a href="">Blog</a></li>
<li class="menu-item"><a href="">Sponsored</a></li>
<li class="menu-item"><a href="">Facebook</a></li>
<li class="menu-item"><a href="">Twitter</a></li>
<li class="menu-item"><a href="">About</a></li>
<li class="menu-item"><a href="">Contact</a></li>
</ul>
<div class="icon">move please</div>
</div><!-- //END menu-wrapper -->
</body>
CSS
#menu-wrapper { position: fixed; bottom: 50px; margin: 0 auto; text-align:center;}
.icon {
width: 9px;
height: 9px;
background: url(../images/plus-menu.png) no-repeat 0 0;
position: absolute;
left: -5px;
bottom: -4px;
}
#main-nav { line-height: 1.0; float: left; margin-bottom: 1em; }
#main-nav{list-style: none;}
#main-nav li a {
display: block;
position: relative;
text-decoration: none;
margin-right: 20px;
color: #b2b2b2;
line-height: 19px;
padding-bottom: 17px;
}
#main-nav li { float: left; position: relative; }
#main-nav li a:hover, #main-nav li a:active { color: #404040; }
任何帮助都会很棒
由于
答案 0 :(得分:2)
将您的代码包裹在$(document).ready()
<script>
$(document).ready(function()
{
$("li.menu-item").hover(function(){
var pos = $(this).position().left;
$(".icon").animate({left : pos+'px'}, 1500 );
});
});
</script>
查看此beginner tutorial以获取更多信息
答案 1 :(得分:1)
坎。通过最少的修改(stop()
在每个新的悬停事件上ping动画,所以东西不会被链接),它似乎可以在this fiddle中使用。