在wordpress中滑动切换 - 一次只打开一个?

时间:2012-06-04 18:06:05

标签: jquery wordpress slidetoggle

我真的希望有人可以提供帮助!我在slideToggle上发现了很多帖子以及如何一次只显示一个div,但我不知道如何在我买的wordpress主题中将它实现到这个菜单中。这是主题:http://themes.themegoods.com/rhea_wp(我已经破解了菜单,所以它没有做那些恼人的淡化(和音乐)。但是当你点击它们时看看所有菜单是如何保持打开的?下面是代码对于菜单。是否可以编辑此代码以使其一次只显示一个子菜单?我希望其他人在您点击另一个主链接时关闭。也许我不需要使用slideToggle?也许是slideUp和slideDown?还是其他什么?我很新,真的需要很快为客户解决这个问题!我很感激任何帮助!

$j.fn.setNav = function(){
$j('#main_menu li ul').css({display: 'none'});

$j( 'ul#main_menu > li:has( ul li.current-menu-item )' ).each(function()
{   
    $j(this).find('ul.sub-menu').css({overflow:'visible', height:'auto', display:  'block'});
});

$j('ul#main_menu > li:has( ul.sub-menu )').click(function()
{

    var $jsublist = jQuery(this).find('ul:first');
    $jsublist.slideToggle('fast');

    return false;
});

$j('ul#main_menu > li > ul.sub-menu li ').click(function()
{
    var subURL = $j(this).find('a:first').attr('href');
    location.href=subURL;
    return true;
}); }

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

我不认为你应该在没有理解底层代码的情况下为客户提供黑客攻击主题,只有当某些内容破裂或客户想要新东西时,它才会回来困扰你。

那说快速黑客改变这条线:

$jsublist.slideToggle('fast');

对此,可能有效:

$('ul.sub-menu').slideDown('fast');
$jsublist.slideToggle('fast');

答案 2 :(得分:0)

解决。问题很简单,主题是使用旧版本的jQuery - 1.3.2。一旦我调用了最新版本,菜单就可以使用这个修改:

$j('ul#main_menu > li:has( ul.sub-menu )').click(function () {
var $jsublist = jQuery(this).find('ul:first');
    $('.visible').slideUp('fast')
    $jsublist.slideToggle('fast').addClass('visible');
return false;