Mega Menu
Documentation and examples for Front's powerful, and responsive navigation mega menu.
How to use
Copy-paste the stylesheet <link> into your <head> to load the CSS.
              
                <link rel="stylesheet" href="../assets/vendor/hs-mega-menu/dist/hs-mega-menu.min.css">
              
            
            Copy-paste the following <script> near the end of your pages under JS Implementing Plugins to enable it.
              
                <script src="../assets/vendor/hs-mega-menu/dist/hs-mega-menu.min.js"></script>
              
            
            Copy-paste the init function under JS Plugins Init., before the closing </body> tag, to enable it.
              
                <script>
                  $(document).on('ready', function () {
                    // initialization of mega menu
                    var megaMenu = new HSMegaMenu($('.js-mega-menu')).init();
                  });
                </script>
              
            
            
            How it works
Here's what you need to know before getting started with the mega menu:
- Mega menu requires a wrapping 
.js-mega-menu(or any other ID or class which you can replace with) along with.navbarclass. .hs-has-mega-menu- is a parent class that contains sub-elements within it..hs-mega-menu- is a child class that contains a container for the mega menu.- Mega menus are responsive by default, but you can easily modify them to change that. Responsive behavior depends on our 
hs-megamenuJavaScript plugin. 
Example
Columns
Adjust the size width of the mega menu, when using less columns or when the content of the container is less. Set maximum width via data-hs-mega-menu-item-options='{ "desktop": { "maxWidth": "" } }' attribute.
Alignment
Set "desktop": { "position": "left" } to "left" or "right" to align the mega menu position according to that side.
Responsive
Set your collapsing breakpoint - Determines with what resolution mobile layout is enabled. Resolution Map corresponds to Bootstrap and requires the same .navbar-expand{-sm|-md|-lg|-xl} for responsive collapsing. This example collapses the mega menu at 768 / md breakpoint.
Methods
| Parameters | Description | Default value | 
|---|---|---|
| 
                         
  | 
                      
                        Defines the event on which the menu will be displayed. Valid values are:
                        
  | 
                      hover | 
                    
| 
                         
  | 
                      
                        Direction of the menus. Valid values are:
                        
  | 
                      horizontal | 
                    
| 
                         
  | 
                      Determines with what resolution mobile layout is enabled. Resolution Map corresponds to Bootstrap 4 | 'lg' | 
                    
| 
                         
  | 
                      Appearing effect | 'slideInUp' | 
                    
| 
                         
  | 
                      Disappearing effect | false | 
                    
| 
                         
  | 
                      Menu location during initialization | null | 
                    
| 
                         
  | 
                      Sets the maximum width for the dropdown menu | null | 
                    
| 
                         
  | 
                      If true, displays all items from right-to-left (RTL) | 
                      false | 
                    
| 
                         
  | 
                      Delay of the disappearance of the menu | 300 | 
                    
| 
                         
  | 
                      Determines how much of the width the sidebar will occupy the dropdown list. Only works if direction: 'vertical' | 
                      1 / 4 | 
                    
| 
                         
  | 
                      Determines with respect to which element the drop-down menu will be positioned. Only works if direction: 'vertical' | 
                      $('body') | 
                    
| 
                         
  | 
                      Opening speed of the menu in the mobile layout | 400 | 
                    
| 
                         
  | 
                      Class informing that the menu is ready to work | '.hs-menu-initialized' | 
                    
| 
                         
  | 
                      Class informing that the menu has moved to mobile layout | '.hs-mobile-state' | 
                    
| 
                         
  | 
                      Class for the sub menu. The script will look for exactly this class when working | '.hs-sub-menu' | 
                    
| 
                         
  | 
                      Class for items that contain a sub menu. The script will look for exactly this class when working | '.hs-has-sub-menu' | 
                    
| 
                         
  | 
                      Class given to an invoker when opening a sub menu | '.hs-sub-menu-opened' | 
                    
| 
                         
  | 
                      Class for mega menu. The script will look for exactly this class when working | '.hs-mega-menu' | 
                    
| 
                         
  | 
                      Class for items that contain mega menus. The script will look for exactly this class when working | '.hs-has-mega-menu' | 
                    
| 
                         
  | 
                      Class given to an invoker when opening a mega menu | '.hs-mega-menu-opened' |