Jquery单击菜单问题

时间:2011-07-18 05:08:48

标签: jquery jquery-click-event

我的网站上有两个名为Business and Personal的标签。当页面首次加载时,“业务”选项卡的项目将显示在选项卡下方的栏中。通过单击“Perosnal”,它将显示个人项目。这对我来说很好。现在我想更改代码中的内容,当我点击页面刷新的任何个人菜单项时,它再次显示商务菜单项。 看看这里的website

这是我的Jquery代码:

$(document).ready(function() {

    $('.business-tab').show();
    $('.personal-tab').hide();
    $('.business-tab #block-nice_menus-2').hide();
    $('.business-top').children().css('color','#00A2C8');
    $('.personal-top').children().css('color','#000000');
    $('.business-top').click(function(e) {
        e.preventDefault();
        $(this).children().css('color','#00A2C8');
        $('.personal-top a').css('color', '#000000');
        $(this).css('margin-bottom', '0px');
        $('.personal-tab').hide();
        $('.business-tab').show();
        $('.business-tab #block-nice_menus-2').hide();
    });
    $('.personal-top').click(function(e) {
        e.preventDefault();
        $(this).children().css('color','#00A2C8');
        $('.business-top a').css('color', '#000000');
        $(this).css('margin-bottom', '0px');
        $('.personal-tab').show();
        $('.business-tab').hide();
        $('.personal-tab #block-nice_menus-2').show();
        $('.personal-tab #block-nice_menus-1').hide();
    });

});

我知道页面刷新时会执行我在文档中写的代码。当我点击个人菜单下的任何项目时,页面刷新后它再次进入商家菜单及其项目。我不想要它而不是它我想要显示个人物品。我怎样才能做到这一点 ?非常感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

您可以使用cookie

在您设置Cookie的click()事件中附加一些代码,告诉客户他们是在商业还是个人方面浏览。我不打算粘贴代码,因为我只是直接从我发布的链接中复制代码。但是,在您要添加的click()个活动中

setCookie("navigation_side", 1, 1);

第二个参数告诉你他们在哪一侧导航。我只选择了int,你可以选择string,boolean等等。

然后在代码的顶部,您将拥有

if ( getCookie("navigation_side") === 1 ) {
    $('.business-tab').show();
    $('.personal-tab').hide();
} else {
    $('.business-tab').hide();
    $('.personal-tab').show();        
}

确保设置适当的过期时间!祝你好运。

答案 1 :(得分:1)

我正在回答我的问题。我找到了解决方案,所以我只想分享它,这样任何人都可以从答案中受益。 我存储了当前的URL并用它来解决我的问题。让我们看一下更新的jquery代码。

$(document).ready(function() {

var href = $(location).attr('href');
var substr = href.split('/');
var currentUrl = substr[3];
if( currentUrl == 'personal-mobile' ) {
    $( '.personal-tab' ).show();
    $( '.business-tab' ).hide();
    $( '.personal-tab #block-nice_menus-1' ).hide();
    $( '.personal-top' ).children().css('color','#00A2C8');
    $('.business-top a' ).css('color', '#000000');
}
else {
    $( '.business-tab' ).show();
    $( '.personal-tab' ).hide();
    $('.business-top').children().css('color','#00A2C8');
    $('.personal-top').children().css('color','#000000');
}

$('.business-tab #block-nice_menus-2').hide();

$('.business-top').click(function(e) {
    e.preventDefault();
    $(this).children().css('color','#00A2C8');
    $('.personal-top a').css('color', '#000000');
    $(this).css('margin-bottom', '0px');
    $('.personal-tab').hide();
    $('.business-tab').show();
    $('.business-tab #block-nice_menus-2').hide();
});
$('.personal-top').click(function(e) {
    e.preventDefault();
    $(this).children().css('color','#00A2C8');
    $('.business-top a').css('color', '#000000');
    $(this).css('margin-bottom', '0px');
    $('.personal-tab').show();
    $('.business-tab').hide();
    $('.personal-tab #block-nice_menus-2').show();
    $('.personal-tab #block-nice_menus-1').hide();
});

});