Skip to content

Instantly share code, notes, and snippets.

@carlosonweb
Last active February 27, 2022 10:21
Show Gist options
  • Star 4 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save carlosonweb/06a3d5ab237b38afc0b5118f94f9f778 to your computer and use it in GitHub Desktop.
Save carlosonweb/06a3d5ab237b38afc0b5118f94f9f778 to your computer and use it in GitHub Desktop.
On Beaver Builder Theme, prevent the Navigation Menu from displaying submenu items on hover and instead do it on click.
<?php
add_action('wp_footer', function(){
if ( is_admin() ) return;
?>
<script id="remove-menu-hover">
jQuery(document).ready(function($){
setTimeout(function(){
$('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children').off('mouseenter mouseleave');
$('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children > a').on('click', function(event){
event.preventDefault();
});
$('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children').on('click', function(event){
$('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children').removeClass('fl-sub-menu-open');
$(this).addClass('fl-sub-menu-open');
event.stopPropagation();
});
$(document).on('click', function(){
$('nav.fl-page-nav ul.navbar-nav > li.menu-item').removeClass('fl-sub-menu-open');
});
}, 1100);
});
</script>
<?php
}, 900);
@sjurgran
Copy link

Thanx :) needed this one today :)

@spencerslickremix
Copy link

spencerslickremix commented Feb 25, 2022

No doubt, thanks! I found some issues when resizing browser so I added that into the the mix. I only wanted to target one menu item in particular because it was a mega menu too, thus the reason for the #menu-item-12157. I also added a couple lines of CSS to make it all work proper too.

`jQuery( document ).ready(
function( $ ) {

     setTimeout(function(){
        $('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children#menu-item-12157 > a').on('click', function(event){
            event.preventDefault();
        });
        $('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children#menu-item-12157').on('click', function(event){
            $('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children#menu-item-12157').removeClass('fl-sub-menu-open');
            $('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children#menu-item-12157').removeClass('mega-menu-items-3');
            $(this).addClass('fl-sub-menu-open');
            $('.sub-menu', this).attr('style', 'opacity: 1 !important');
            event.stopPropagation();
        });
        
        $(document).on('click', function(){
            $('nav.fl-page-nav ul.navbar-nav > li.menu-item').removeClass('fl-sub-menu-open');
        });
    }, 100);

    $(window).on("load resize scroll", function() {

        setTimeout(function(){

            $('nav.fl-page-nav ul.navbar-nav > li.menu-item-has-children#menu-item-12157 .sub-menu').attr('style', '');

        }, 100);
    });

});`

#menu-item-12157 .sub-menu{ opacity: 0 !important; } #menu-item-12157 .sub-menu .sub-menu { opacity: 1 !important; }

@carlosonweb
Copy link
Author

@spencerslickremix Thanks for sharing your code!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment