【发布时间】:2014-03-11 22:46:39
【问题描述】:
所以基本上我有一个这样的菜单:[家庭、项目、声音、联系人],菜单顶部有一个小圆圈。所以我希望当我点击一个菜单项时,小圆圈会移动到该项目(在它的顶部)。
所以是这样的:
到目前为止,这是我的 jquery:
$(document).ready(function(){
var position = 80;
$('.navP').click(function(){
// change all to black, then change the one I clicked to red
$('#indicatorBar').animate({'margin-left':'+='+position+'px'}, 1000);
$('.navP').css('color', 'white');
$(this).css('color', 'red');
});
});
我的html:
<div class ="menuContainer">
<span id="indicatorBar">
<i class="icon-circle"></i>
</span>
<a class="nameBanner" href="#mainPage"> Ipalibo Whyte</a>
<ul>
<li><a class="navP" href="#mainPage">Home</a></li>
<li><a class="navP" href="#projectContents">Projects</a></li>
<li><a class="navP" href="#musicContent">Sounds</a></li>
<li><a class="navP" href="#contactContent">Contact me</a></li>
</ul>
</div>
CSS:
#indicatorBar{
top: 0px;
right: 60px;
font-size: 7px;
color: #B4FF47;
}
.menuContainer{
position: fixed;
width: 100%;
top: 0%;
left: 0%;
bottom: 92%;
opacity: 0.7;
z-index:9;
background: #16161F;
animation: fadein 3s;
-moz-animation: fadein 3s; /* Firefox */
-webkit-animation: fadein 3s; /* Safari and Chrome */
-o-animation: fadein 3s; /* Opera */
示例将不胜感激,谢谢一百万!
【问题讨论】:
-
它现在做什么?它有动画或移动吗?你能发一个小提琴吗?
-
您已硬编码该职位。您想使用 jQuery position() 函数来确定当前元素的位置。像
var position = $(this).position().left;这样的东西会让你得到被点击的元素的左边缘。获取元素的宽度,除以二,添加到左边,就可以了。 -
@zero298 当你点击任何按钮时它只会向左移动 LOL 如此多的点击可以将圆圈完全移出你得到的屏幕?
标签: javascript jquery html css web