select.min.js 873 B

123456789101112131415161718192021222324252627
  1. jQuery(($) => {
  2. $('.select').on('click', '.select__head', function () {
  3. if ($(this).hasClass('open')) {
  4. $(this).removeClass('open');
  5. $(this).next().fadeOut();
  6. } else {
  7. $('.select__head').removeClass('open');
  8. $('.select__list').fadeOut();
  9. $(this).addClass('open');
  10. $(this).next().fadeIn();
  11. }
  12. });
  13. $('.select').on('click', '.select__item', function () {
  14. $('.select__head').removeClass('open');
  15. $(this).parent().fadeOut();
  16. $(this).parent().prev().text($(this).text());
  17. $(this).parent().prev().prev().val($(this).text());
  18. });
  19. $(document).click(function (e) {
  20. if (!$(e.target).closest('.select').length) {
  21. $('.select__head').removeClass('open');
  22. $('.select__list').fadeOut();
  23. }
  24. });
  25. });