Sha256: 8af146e0cd25b512c602021375ff15ebb854b9ecd76c5ded06b4c66a979de67b

Contents?: true

Size: 1.69 KB

Versions: 4

Compression:

Stored size: 1.69 KB

Contents

const SearchInput   = $('.input.--search'),
      SearchResults = $('.block._results');

const OpenOverlay = type => {
  gsap.set(body,{overflow:"hidden"});
  gsap.set('.overlay._' + type,{display:open});
}

const CloseOverlay = type => {
  gsap.set(body,{clearProps:"overflow"});
  gsap.set('.overlay._' + type,{display:"none"});
}

function KeyFunc(e) {
  let code = e.keyCode;

  if (code == 27) {
    if (AboutOpen) {
      CloseOverlay('about');
      AboutOpen = false;
    }
    if (BrowseOpen) {
      CloseOverlay('browse');
      BrowseOpen = false;
    }
    if (SearchOpen) {
      CloseOverlay('search');
      SearchInput.val('');
      SearchResults.html('');
      SearchOpen = false;
    }
  }

  if (AboutOpen == false && BrowseOpen == false && SearchOpen == false) {
    if (code == 65) {
      OpenOverlay('about');
      AboutOpen = true;
    }
    if (code == 66) {
      OpenOverlay('browse');
      BrowseOpen = true;
    }
    if (code == 83) {
      OpenOverlay('search');
      SearchInput.focus();
      SearchOpen = true;
    }
  }
}

$('.btn._nav.--about').click(function() {
  OpenOverlay('about');
  AboutOpen = true;
});

$('.btn._nav.--browse').click(function() {
  OpenOverlay('browse');
  BrowseOpen = true;
});

$('.btn._nav.--search').click(function() {
  OpenOverlay('search');
  SearchInput.focus();
  SearchOpen = true;
});

$('.exit._about').click(function() {
  CloseOverlay('about');
  AboutOpen = false;
});

$('.exit._browse').click(function() {
  CloseOverlay('browse');
  BrowseOpen = false;
});

$('.exit._search').click(function() {
  CloseOverlay('search');
  SearchInput.val('');
  SearchResults.html('');
  SearchOpen = false;
});

$(document).keyup(function(e){
  KeyFunc(e);
});

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
futuro-0.3.9 assets/js/footer/custom/OpenOverlay.js
futuro-0.3.8 assets/js/footer/custom/OpenOverlay.js
futuro-0.3.7 assets/js/footer/custom/OpenOverlay.js
futuro-0.3.6 assets/js/custom/OpenOverlay.js