使用.wrap()创建目标div后发出问题

问题描述 投票:-1回答:1

我有一个奇怪的问题,检查我刚用.wrap()创建的div是否可见。我正在包装一些div并使用ID作为目标。我已经测试过以确保点击实际上是用alert()注册的,而且确实如此。

这是代码。

//Leftbar jQuery
$('ul.leftnav').wrap('<div id="leftnav-wrap" class="five columns alpha" />');
$('#leftnav-wrap').prepend('<div class="arrow" />');
$('#content').has('#leftnav-wrap').find('#page').wrap('<div class="eleven columns omega" />');

//Mobile Leftbar
$('h4.mobile.toggle').click(function(){
    if ($('#leftnav-wrap').is(':hidden')){
        $(this).addClass('active');
        $('#leftnav-wrap').addClass('active');
    }
    else{
        $(this).removeClass('active');
        $('#leftnav-wrap').removeClass('active');
    }
});

我编码的内容是否存在固有的错误?它没有切换它所假设的任何活动类,并且我有另一个工作正常的网站,只是它没有针对刚刚由.wrap()创建的ID。

JS在这里:jsfiddle.net/ZD7hz。不切换任何课程

jquery click hidden visible
1个回答
0
投票

所以,这是问题所在。它无法找到一个隐藏的div来添加一个类,它也找不到一个可见的div来删除该类。所以点击什么也没做。

我不得不用CSS抢先隐藏左侧导航,并为qazxsw poi状态添加一个类,以便再次显示它。然后,切换工作正常......

哎呦!

修正了jsFiddle在这里:.active

© www.soinside.com 2019 - 2024. All rights reserved.