我有 3 个 div 用于在我的网站页面顶部显示导航。全部使用JQuery函数:
$('#div_button').click( function() {
$('#div_nav').slideToggle();
);
问题是,我可以得到一个场景,我得到 2 个滑动切换/ div 彼此叠加,这并不好。当我单击一个按钮启动 slideToggle 时,我想删除当前显示的任何其他 div。
描述问题的图片:
任何人都可以提出解决方案吗?
提前致谢
我有 3 个 div 用于在我的网站页面顶部显示导航。全部使用JQuery函数:
$('#div_button').click( function() {
$('#div_nav').slideToggle();
);
问题是,我可以得到一个场景,我得到 2 个滑动切换/ div 彼此叠加,这并不好。当我单击一个按钮启动 slideToggle 时,我想删除当前显示的任何其他 div。
描述问题的图片:
任何人都可以提出解决方案吗?
提前致谢
hide()
所有其他div
优先
$('#div_button').click( function() {
$('.otherDivClass').hide();
$('#div_nav').slideToggle();
);
使用 Accordion 之类的插件可以让您应用您所追求的功能,而无需向标题和内容元素添加类。
http://api.jqueryui.com/accordion/
如果您确信需要坚持使用 ID,另一种方法是编写 3 个单独的单击函数,分别打开和关闭相关元素。
我已经设法找到解决这个问题的方法。基本上你需要使用这个函数来等待其他slideToggles或者slideUPs完成:
$('#tcd-home-view-nav').slideUp(function(){
// Animation complete.
$('#tcd-home-edit-nav').slideToggle();
});
欢呼人们帮助我解决这个问题。克里斯