jQuery手机各种下拉菜单效果加搜索输入框

jQuery手机各种下拉菜单效果加搜索输入框

添加时间:2021-03-14 19:14:39
站长推荐丨赞助论坛,可获取海量资源终身免费下载权限奥!
举报 举报
收藏
预览
附件 附件
  • 模板类型模板类型:下拉导航
  • 模板颜色模板颜色:高级
  • 下载积分下载积分:28 米粒
  • 下载权限下载权限:

    赞助会员

这款响应式手机菜单保护了文字下拉、商品图片下拉、图标结合文字下拉,还有手机端常用的搜索框。收缩浏览器窗口大小,看看有什么变化。或者放到手机上查看,和pc完全不一样的导航菜单展示效果。
jQuery手机各种下拉菜单效果加搜索输入框
分类:导航菜单 > 下拉导航 难易:高级

导航搜索按钮

<header class="cd-main-header">
    <ul class="cd-header-buttons">
        <li><a class="cd-search-trigger" href="#cd-search">Search<span></span></a></li>
        <li><a class="cd-nav-trigger" href="#cd-primary-nav">Menu<span></span></a></li>
    </ul> <!-- cd-header-buttons -->
</header>

main.js

var MqL = 1170;
//move nav element position according to window width
moveNavigation();
$(window).on('resize', function() {
    (!window.requestAnimationFrame) ? setTimeout(moveNavigation, 300) : window.requestAnimationFrame(moveNavigation);
});

//mobile - open lateral menu clicking on the menu icon
$('.cd-nav-trigger').on('click', function(event) {
    event.preventDefault();
    if ($('.cd-main-content').hasClass('nav-is-visible')) {
        closeNav();
        $('.cd-overlay').removeClass('is-visible');
    } else {
        $(this).addClass('nav-is-visible');
        $('.cd-primary-nav').addClass('nav-is-visible');
        $('.cd-main-header').addClass('nav-is-visible');
        $('.cd-main-content').addClass('nav-is-visible').one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function() {
            $('body').addClass('overflow-hidden');
        });
        toggleSearch('close');
        $('.cd-overlay').addClass('is-visible');
    }
});

//open search form
$('.cd-search-trigger').on('click', function(event) {
    event.preventDefault();
    toggleSearch();
    closeNav();
});

//close lateral menu on mobile 
$('.cd-overlay').on('swiperight', function() {
    if ($('.cd-primary-nav').hasClass('nav-is-visible')) {
        closeNav();
        $('.cd-overlay').removeClass('is-visible');
    }
});
$('.nav-on-left .cd-overlay').on('swipeleft', function() {
    if ($('.cd-primary-nav').hasClass('nav-is-visible')) {
        closeNav();
        $('.cd-overlay').removeClass('is-visible');
    }
});
$('.cd-overlay').on('click', function() {
    closeNav();
    toggleSearch('close')
    $('.cd-overlay').removeClass('is-visible');
});


//prevent default clicking on direct children of .cd-primary-nav 
$('.cd-primary-nav').children('.has-children').children('a').on('click', function(event) {
    event.preventDefault();
});
//open submenu
$('.has-children').children('a').on('click', function(event) {
    if (!checkWindowWidth())
        event.preventDefault();
    var selected = $(this);
    if (selected.next('ul').hasClass('is-hidden')) {
        //desktop version only
        selected.addClass('selected').next('ul').removeClass('is-hidden').end().parent('.has-children').parent('ul').addClass('moves-out');
        selected.parent('.has-children').siblings('.has-children').children('ul').addClass('is-hidden').end().children('a').removeClass('selected');
        $('.cd-overlay').addClass('is-visible');
    } else {
        selected.removeClass('selected').next('ul').addClass('is-hidden').end().parent('.has-children').parent('ul').removeClass('moves-out');
        $('.cd-overlay').removeClass('is-visible');
    }
    toggleSearch('close');
});

//submenu items - go back link
$('.go-back').on('click', function() {
    $(this).parent('ul').addClass('is-hidden').parent('.has-children').parent('ul').removeClass('moves-out');
});

调用方法

$('.go-back').on('click', function() {
    $(this).parent('ul').addClass('is-hidden').parent('.has-children').parent('ul').removeClass('moves-out');
});

function closeNav() {
    $('.cd-nav-trigger').removeClass('nav-is-visible');
    $('.cd-main-header').removeClass('nav-is-visible');
    $('.cd-primary-nav').removeClass('nav-is-visible');
    $('.has-children ul').addClass('is-hidden');
    $('.has-children a').removeClass('selected');
    $('.moves-out').removeClass('moves-out');
    $('.cd-main-content').removeClass('nav-is-visible').one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function() {
        $('body').removeClass('overflow-hidden');
    });
}

function toggleSearch(type) {
    if (type == "close") {
        //close serach 
        $('.cd-search').removeClass('is-visible');
        $('.cd-search-trigger').removeClass('search-is-visible');
    } else {
        //toggle search visibility
        $('.cd-search').toggleClass('is-visible');
        $('.cd-search-trigger').toggleClass('search-is-visible');
        if ($(window).width() > MqL && $('.cd-search').hasClass('is-visible'))
            $('.cd-search').find('input[type="search"]').focus();
        ($('.cd-search').hasClass('is-visible')) ? $('.cd-overlay').addClass('is-visible') : $('.cd-overlay').removeClass('is-visible');
    }
}

function checkWindowWidth() {
    //check window width (scrollbar included)
    var e = window,
            a = 'inner';
    if (!('innerWidth' in window)) {
        a = 'client';
        e = document.documentElement || document.body;
    }
    if (e[ a + 'Width' ] >= MqL) {
        return true;
    } else {
        return false;
    }
}

function moveNavigation() {
    var navigation = $('.cd-nav');
    var desktop = checkWindowWidth();
    if (desktop) {
        navigation.detach();
        navigation.insertBefore('.cd-header-buttons');
    } else {
        navigation.detach();
        navigation.insertAfter('.cd-main-content');
    }
}
相关内容推荐
资源求助发帖
查看更多发帖

*

回帖描述:

*

链接类型:

*

下载链接:

密码:
发帖规则:回帖内容为会员之间的私信,普通网友无法查看。
免责声明:回帖中提供的链接内容仅供会员之间学习参考使用,获取内容后请在法律法规范围内使用。回帖提供的内容应符合法律法规要求,不得违反法律法律的要求。
站点权责:回帖内容如违反法律法规,站点有权封停账号使用权利。对用户举报的内容,站点有责任及时删除违规内容。
热点内容推荐
标题:jQuery手机各种下拉菜单效果加搜索输入框

*

描述:
平均回复时间:3-10分钟
规则介绍:悬赏寻求论坛网友分享资源,站点对分享内容的准确性,合法性,版权等没有足够的监管能力。如果您发现资源不正确,无法使用,不符合法律法律等情况,您可以直接举报资源。站长将尽快核实您的举报,并根据情况,采取封号,退换米粒等处理。

*

回帖描述:

*

链接类型:

*

阅读权限:

*

下载链接:

密码:
发帖规则:回帖内容为会员之间的私信,普通网友无法查看。
免责声明:回帖中提供的链接内容仅供会员之间学习参考使用,获取内容后请在法律法规范围内使用。回帖提供的内容应符合法律法规要求,不得违反法律法律的要求。
站点权责:回帖内容如违反法律法规,站点有权封停账号使用权利。对用户举报的内容,站点有责任及时删除违规内容。
  • 背景波浪
  • 背景波浪
  • 波浪
  • 波浪
客服
在线咨询
周一 至 周日 9:00 ~ 22:00
QQ:1326974360
微信:juyoubuluo6688
客服热线
18205485173
工作日 9:00 ~ 18:00
微信扫码咨询
客户服务
欢迎咨询服务
咨询量较多时,请耐心等待
社群

关注公众号

获取更多资讯

扫码进群(QQ)

与更多大牛交流沟通

0.102516s