我需要创建一个向上而不是向下动画的切换,换句话说,与“正常”切换相反。也许更简单的是切换应该在菜单项(它是一个菜单)上方滑动以变得可见,而不是像正常的 slideToggle 等那样向下滑动。我几乎就在那里:
var opened = false;
$("#coltab li").click(function(){
if(opened){
$(this).children('ul').animate({"top": "+=300px"});
} else {
$(this).children('ul').animate({"top": "-=300px"});
}
$(this).children('ul').children().slideToggle('slow');
$(this).children('ul').toggle();
opened = opened ? false : true;
});
但是如果你“切换”一个项目然后另一个项目第二个项目(向下滑动)下降 300 像素而不是向上滑动(提升)300 像素。我想要实现的一个很好的例子(讨厌该网站)是http://market.weogeo.com/#/home和底部的“标签”。
我的 HTML 代码正在使用
<ul id="#coltab">
<li>Item 1
<ul>
<li>This bit needs to toggle up</li>
</ul>
</li>
<li>Item 2
<ul>
<li>This bit needs to toggle up</li>
</ul>
</li>
etc ...
</ul>
在 CSS 方面
ul#coltab { position: relative' blah; blah; }
和
ul#coltab ul { display: none; position: absolute; blah; blah; }
有任何想法吗?
如果每次“点击”在打开“点击”切换之前关闭前一个切换,那就太好了。