navbar.html 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. {{ if .Site.Params.enableNavbar }}
  2. <nav class="nav">
  3. <div class="navbar__wrapper" data-bgimg="{{ if and ($.Params.landing.backgroundImage) .IsHome }}true{{ else }}false{{ end }}">
  4. <div class="divider">
  5. <div class="navbar lmr">
  6. {{ partial "navbar/logo/navbar-logo.html" . }}
  7. <div class="navbar__menu--wrapper">
  8. {{ partial "navbar/logo/navbar-logo-tablet.html" . }}
  9. {{ partial "navbar/logo/navbar-logo-mobile.html" . }}
  10. {{ partial "navbar/menu/navbar-menu-mobile.html" . }}
  11. <ul id="navMenu" class="navbar__menu">
  12. {{ partial "navbar/menu/navbar-menu.html" . }}
  13. </ul>
  14. </div>
  15. <div class="grow"></div>
  16. <div id="siteSearch">
  17. {{ partial "navbar/search/site-search.html" . }}
  18. </div>
  19. <div id="mobileSearch" class="hide">
  20. {{ partial "navbar/search/site-search-mobile.html" . }}
  21. </div>
  22. {{ partial "navbar/icons/navbar-icons.html" . }}
  23. </div>
  24. </div>
  25. </div>
  26. </nav>
  27. <script>
  28. var siteLogo = document.getElementById('siteLogo');
  29. var tabletLogo = document.getElementById('tabletLogo');
  30. var mobileLogo = document.getElementById('mobileLogo');
  31. var navMenu = document.getElementById('navMenu');
  32. var navMenuMobile = document.getElementById('navMenuMobile');
  33. var siteSearch = document.getElementById('siteSearch');
  34. var mobileSearch = document.getElementById('mobileSearch');
  35. enquire.register("screen and (max-width:1280px)", {
  36. match: function () {
  37. siteLogo.className = 'navbar__logo--wrapper';
  38. tabletLogo.className = 'hide';
  39. mobileLogo.className = 'hide';
  40. navMenu.className = 'navbar__menu';
  41. navMenuMobile.className = 'hide';
  42. siteSearch.className = '';
  43. mobileSearch.className = 'hide';
  44. },
  45. unmatch: function () {
  46. siteLogo.className = 'navbar__logo--wrapper';
  47. tabletLogo.className = 'hide';
  48. mobileLogo.className = 'hide';
  49. navMenu.className = 'navbar__menu';
  50. navMenuMobile.className = 'hide';
  51. siteSearch.className = '';
  52. mobileSearch.className = 'hide';
  53. },
  54. }).register("screen and (max-width:960px)", {
  55. match: function () {
  56. siteLogo.className = 'hide';
  57. tabletLogo.className = '';
  58. mobileLogo.className = 'hide';
  59. navMenu.className = 'navbar__menu';
  60. navMenuMobile.className = 'hide';
  61. siteSearch.className = 'hide';
  62. mobileSearch.className = 'navbar__icons--icon';
  63. },
  64. unmatch: function () {
  65. siteLogo.className = 'navbar__logo--wrapper';
  66. tabletLogo.className = 'hide';
  67. mobileLogo.className = 'hide';
  68. navMenu.className = 'navbar__menu';
  69. navMenuMobile.className = 'hide';
  70. siteSearch.className = '';
  71. mobileSearch.className = 'hide';
  72. },
  73. }).register("screen and (max-width:600px)", {
  74. match: function () {
  75. siteLogo.className = 'hide';
  76. tabletLogo.className = 'hide';
  77. mobileLogo.className = '';
  78. navMenu.className = 'hide';
  79. navMenuMobile.className = '';
  80. siteSearch.className = 'hide';
  81. mobileSearch.className = 'navbar__icons--icon';
  82. },
  83. unmatch: function () {
  84. siteLogo.className = 'hide';
  85. tabletLogo.className = '';
  86. mobileLogo.className = 'hide';
  87. navMenu.className = 'navbar__menu';
  88. navMenuMobile.className = 'hide';
  89. siteSearch.className = 'hide';
  90. mobileSearch.className = 'navbar__icons--icon';
  91. },
  92. });
  93. </script>
  94. {{ end }}