动画div元素从左到右动画

时间:2011-05-05 01:18:38

标签: javascript jquery

我有一个由div组成的菜单系统,我希望每当用户将鼠标悬停在菜单项上时动画左侧属性,但我需要外部div(黑色)元素随菜单项移动而展开从左到右我也希望div元素(.container)向后滑动并收缩外部div元素(这个黑色div是0宽度)我有一个基本的例子在jsFiddle完成它olny将元素移动到左

3 个答案:

答案 0 :(得分:2)

完全理解有点麻烦,但这是你的意思吗?

http://jsfiddle.net/V3RHr/2/

答案 1 :(得分:1)

如果我可以稍微改写你的html,我会把每个.menu-item放到一个无序的列表中。

当您将鼠标放入无序列表时,将展开第二个容器。在mouseenter函数中,当你鼠标输入一个列表项时,我会有第二个事件,你填充第二个容器和stopPropogation。

你可能仍然可以在第一个容器上使用mouseenter,在div.menu-item上使用另一个mouseenter,但是你的第一个容器有额外的高度和宽度。

答案 2 :(得分:0)

你应该能够通过让代码不在最后一个.content上执行来修复left is null问题,如下所示:

$('.container').not(':last').find('.menu-item').mouseenter(function () {

这不适用于绿框内的菜单项。

对于重新展示的问题,我会改变你的展示方式。不要将盒子从另一个盒子后面滑出,你可以将它放在你想要它最终的位置并隐藏它,然后你可以使用:

.animate({width: 'show'})

这将产生类似的滑动效果。

那个,或者类似于我对你的另一个问题的回答,只是没有我之前的崩溃:

http://jsfiddle.net/V3RHr/3/