Chosen: iPad: li.search-choice๋ฅผ ๋‹ซ๊ฑฐ๋‚˜ ์ œ๊ฑฐํ•  ์ˆ˜ ์—†์Œ(`click.chosen` ์ด๋ฒคํŠธ๊ฐ€ ์‹คํ–‰๋˜์ง€ ์•Š์Œ)

์— ๋งŒ๋“  2018๋…„ 12์›” 04์ผ  ยท  5์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: harvesthq/chosen

์žฌํ˜„ ๋‹จ๊ณ„

  1. iPad๋ฅผ ํ†ตํ•ด https://harvesthq.github.io/chosen/์— ์•ก์„ธ์Šคํ•ฉ๋‹ˆ๋‹ค. Chrome ์ฝ˜์†”์˜ "Toggle device toolbar"๋ฅผ ํ†ตํ•ด ์žฌํ˜„ํ•œ ๋‹ค์Œ "iPad" ์žฅ์น˜๋ฅผ ์„ ํƒํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค.

  2. "๋‹ค์ค‘ ์„ ํƒ"์—์„œ ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

  3. ์ด์ œ ๋‹ค๋ฅธ ๊ณณ์„ ํด๋ฆญํ•˜์ง€ ์•Š๊ณ  "x"๋ฅผ ํด๋ฆญํ•˜์—ฌ ์ถ”๊ฐ€๋œ ์š”์†Œ๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์•„๋ฌด ๋ฐ˜์‘์ด ์—†์Šต๋‹ˆ๋‹ค.

์˜ˆ์ƒ๋˜๋Š” ํ–‰๋™

li.search-choice ์š”์†Œ๋ฅผ ์ œ๊ฑฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. select.chosen-select option ๋Š” ์„ ํƒ์„ ์ทจ์†Œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ ํ–‰๋™

li.search-choice ์š”์†Œ๊ฐ€ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. select.chosen-select option ๋Š” ๊ณ„์† ์„ ํƒ๋ฉ๋‹ˆ๋‹ค. chosen.click ์ด๋ฒคํŠธ๋Š” ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ

  • ์„ ํƒ๋œ ๋ฒ„์ „ : 1.8.7(์„ ํƒ๋œ ์›น์‚ฌ์ดํŠธ์—์„œ) ๋ฐ ~1

  • jQuery ๋˜๋Š” ํ”„๋กœํ† ํƒ€์ž… ๋ฒ„์ „ : 3.2.1(์„ ํƒ๋œ ์›น์‚ฌ์ดํŠธ) ๋ฐ 2.1.4 ๋ฐ 2.2.4

  • ๋ธŒ๋ผ์šฐ์ € ๋ฐ ๋ฒ„์ „ : Chrome, ๋ฒ„์ „ 70.0.3538.110(๊ณต์‹ ๋นŒ๋“œ)(64๋น„ํŠธ)

  • OS ๋ฐ ๋ฒ„์ „ : Windows 10, ๋ฒ„์ „ 1709, OS ๋นŒ๋“œ 16299.492

์ถ”๊ฐ€ ์ •๋ณด

๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž‘๋™ํ•˜์ง€๋งŒ(์ฝ˜์†”์˜ "์žฅ์น˜ ๋„๊ตฌ ๋ชจ์Œ ์ „ํ™˜"์„ ํ†ตํ•ด) ๊ฐ€์žฅ ์ง๊ด€์ ์ด์ง€ ์•Š์€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. li.search-choice ์š”์†Œ๊ฐ€ ์ถ”๊ฐ€๋˜๋„๋ก ํŽผ์ณ์ง€๋Š” ๋ฉ”๋‰ด์—์„œ ์š”์†Œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ฐธ๊ณ : "x"๋ฅผ ํด๋ฆญํ•ด๋„ ์•„๋ฌด ์ž‘์—…๋„ ์ˆ˜ํ–‰๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  2. ์›น์‚ฌ์ดํŠธ์˜ ๋‹ค๋ฅธ ๊ณณ์„ ํด๋ฆญํ•˜์‹ญ์‹œ์˜ค. ์ฆ‰, ์„ ํƒ๋œ ํ•„๋“œ ์™ธ๋ถ€.
  3. ์„ ํƒํ•œ ํ•„๋“œ๋ฅผ ํด๋ฆญํ•˜๋ฉด ๊ฒ€์ƒ‰ ๋ฉ”๋‰ด๊ฐ€ ํŽผ์ณ์ง‘๋‹ˆ๋‹ค.
  4. ์ด์ œ ์ด์ „์— ์ถ”๊ฐ€ํ•œ ์š”์†Œ์—์„œ "x"๋ฅผ ํด๋ฆญํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋ฅผ ํด๋ฆญํ•˜๋ฉด ์š”์†Œ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.

์‹ค์ œ ๋ฌผ๋ฆฌ์  iPad์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ƒ๊ฐ

์š”์†Œ๊ฐ€ ์ถ”๊ฐ€๋˜๋ฉด ํด๋ฆญ์กฐ์ฐจ ์ œ ์‹œ๊ฐ„์— ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์„ ํƒํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ๋น ๋ฅด๊ฒŒ ์Šค์บ”ํ•˜๋ฉด ํด๋ฆญ๊ณผ ๊ด€๋ จํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ•ต์‹ฌ ์ด๋ฒคํŠธ๊ฐ€ ์ฒ˜๋ฆฌ๋˜๊ณ  ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • mousedown
  • mousemove
  • mouseup
  • touchstart
  • touchmove
  • touchend

๋‚ด๊ฐ€ ๋ณด์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ์€ ๋‹ค์Œ์— ๋Œ€ํ•œ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ์ž…๋‹ˆ๋‹ค.

  • pointerdown
  • pointermove
  • pointerup

์•„๋งˆ๋„ ์ด๊ฒƒ์ด ๋ฌธ์ œ์— ์˜ํ–ฅ์„ ๋ฏธ์ณค์Šต๋‹ˆ๊นŒ?

๋ชจ๋“  5 ๋Œ“๊ธ€

(์ ์–ด๋„ iPad๋กœ ๊ฐ€์žฅํ•˜๋Š” Chrome์—์„œ๋Š”) ๋‹ค์ค‘ ์„ ํƒ์—์„œ ํ•ญ๋ชฉ์„ ์„ ํƒ ์ทจ์†Œํ•  ์ˆ˜ ์—†์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. X๋ฅผ ๋ˆŒ๋Ÿฌ๋„ ์•„๋ฌด ์ž‘์—…๋„ ์ˆ˜ํ–‰๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ๊ฒช์—ˆ๋‹ค.

์„ ํƒ ํ•„๋“œ(๋‹ซ๋Š” ํ•„๋“œ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์‹ค์ œ๋กœ ๋‹ค๋ฅธ ์š”์†Œ์— ์ดˆ์ )์—์„œ ์ดˆ์ ์„ ๋งž์ถ”๋ฉด X ๋ฒ„ํŠผ์ด ์—ฌ์ „ํžˆ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด ํ•„๋“œ์— ๋‹ค์‹œ ์ดˆ์ ์„ ๋งž์ถ”๊ณ  ๋“œ๋กญ๋‹ค์šด์„ ํ‘œ์‹œํ•˜๋ฏ€๋กœ ์ด์ œ ์˜ต์…˜์„ ์„ฑ๊ณต์ ์œผ๋กœ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋“œ๋กญ๋‹ค์šด์„ ๋‹ซ์œผ๋ฉด ๋‹ค์‹œ X๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํฌ๋กฌ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์™€ ๋ฌผ๋ฆฌ์  ์žฅ์น˜ ๋ชจ๋‘์—์„œ ์ด๊ฒƒ์„ ์žฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ช…ํ™•ํžˆ ํ•˜๊ธฐ ์œ„ํ•ด์„œ์ž…๋‹ˆ๋‹ค. ์š”์†Œ์—์„œ ๋‚˜๊ฐ€๋ฉด chosen-container-active ํด๋ž˜์Šค๋ฅผ ์‚ญ์ œํ•˜๋ ค๋ฉด .chosen-container ๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋•Œ chosen-container-active ์—์„œ ์ œ๊ฑฐ chosen-container ์ƒˆ๋กœ์šด ์ดˆ์ ์„ ๋‹ค์‹œ ์ ์šฉ,์ด ์ˆœ๊ฐ„์— ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์ž, ์—ฌ๊ธฐ์„œ ๋ฌธ์ œ๊ฐ€ ์ •ํ™•ํžˆ ๋ฌด์—‡์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ์ €์—๊ฒŒ ๋„์›€์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋จผ์ € ์ดˆ๊ธฐํ™”ํ•  ๋•Œ ๋‹ค์Œ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

el.chosen({
    display_selected_options: false,
    hide_results_on_select: false,
});

์„ ํƒํ•œ ๋ช‡ ๊ฐ€์ง€ ์ด์œ ๋กœ ํ•„๋“œ์— ์ง‘์ค‘ํ•˜์ง€ ์•Š์„ ๋•Œ ์ปจํŠธ๋กค๊ณผ์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค.

์™ธ๋ถ€ ํ•„๋“œ๋ฅผ ํด๋ฆญํ•˜๋ฉด results_hide ๊ฐ€ ํ˜ธ์ถœ๋˜๊ณ  ์ด ๋ฉ”์„œ๋“œ๋Š” ํ•„๋“œ ์•ก์„ธ์Šค๋ฅผ ์™„์ „ํžˆ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค(์ ์–ด๋„ ๋ชจ๋ฐ”์ผ/ํƒœ๋ธ”๋ฆฟ์—์„œ). ๊ทธ๋ž˜์„œ ์ด ํ–‰๋™์„ ๋ฐฉ์ง€ํ•  ๋ฐฉ๋ฒ•์„ ์ฐพ๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

results_showing ํ”Œ๋ž˜๊ทธ๋ฅผ false๋กœ ์„ค์ •ํ•˜๋ฉด ์ด ๋ฒ„๊ทธ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Chosen.prototype.results_hide = function() {
  if (this.results_showing) {
    this.result_clear_highlight();
    this.container.removeClass("chosen-with-drop");
    this.form_field_jq.trigger("chosen:hiding_dropdown", {
      chosen: this
    });
  }
  // removed because of mobile issue with removeing options
  // return this.results_showing = false;
};

์†Œ์Šค์—์„œ ์ œ๊ฑฐํ•˜๋ฉด(๋ถˆํŽธํ•˜์ง€๋งŒ ์ง€๊ธˆ์€ ๋‹ค๋ฅธ ์„ ํƒ์ด ์—†์Œ) ํŠธ๋ฆญ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ์‹ค์ œ๋กœ ๋ฌด์—‡์„ ํ•˜๋Š”์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ํ˜„์žฌ๋กœ์„œ๋Š” ์–ด๋–ค ๋ถ€์ž‘์šฉ๋„ ๋Š๋ผ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ ๋ชจ๋“  ๋ชจ๋ฐ”์ผ ์žฅ์น˜ ๋ฐ ํƒœ๋ธ”๋ฆฟ์— ๋Œ€ํ•ด ์„ ํƒ์„ ๋น„ํ™œ์„ฑํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด์žฅ ํ„ฐ์น˜ ์„ ํƒ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์„ ํƒํ•œ ์ž…๋ ฅ ์ƒ์ž๋ณด๋‹ค ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰ ์˜ต์…˜์ด ๋ˆ„๋ฝ๋˜์—ˆ์ง€๋งŒ ํ„ฐ์น˜ ์žฅ์น˜์—์„œ๋Š” ์–ด์จŒ๋“  ์ด์ƒํ•˜๊ฒŒ ๋Š๊ปด์กŒ์Šต๋‹ˆ๋‹ค.

590ํ–‰:

    AbstractChosen.browser_is_supported = function() {
      if ("Microsoft Internet Explorer" === window.navigator.appName) {
        return document.documentMode >= 8;
      }
      if (/iP(od|hone)/i.test(window.navigator.userAgent) || /IEMobile/i.test(window.navigator.userAgent) || /Windows Phone/i.test(window.navigator.userAgent) || /BlackBerry/i.test(window.navigator.userAgent) || /BB10/i.test(window.navigator.userAgent) || /Android.*Mobile/i.test(window.navigator.userAgent)) {
        return false;
      }
      if ((/iPhone|iPod|iPad|Android|android|playbook|silk|BlackBerry/).test(navigator.userAgent))
      {
        return false;
      }
      if (/Android/i.test(window.navigator.userAgent)) {
        if (/Mobile/i.test(window.navigator.userAgent)) {
          return false;
        }
       }
       return true;
     };

๊ฑด๋ฐฐ
ํ•œ๋„ค์Šค

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰