React-dnd: IE의 μž…λ ₯을 클릭 ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2016λ…„ 05μ›” 23일  Β·  9μ½”λ©˜νŠΈ  Β·  좜처: react-dnd/react-dnd

정말 κ³ λ§ˆμ›Œμš”!

μž…λ ₯ μƒμžμ— ν…μŠ€νŠΈκ°€μžˆλŠ” 경우 μ‚¬μš©μžλŠ” ν…μŠ€νŠΈ μƒμž λ‚΄λΆ€λ₯Ό ν΄λ¦­ν•˜μ—¬ νŽΈμ§‘ ν•  수 μ—†μœΌλ©° λμ—μ„œ μ‚­μ œν•΄μ•Όν•©λ‹ˆλ‹€. IE 9와 10μ—μ„œ μž¬ν˜„ ν•  μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

λ˜ν•œ Win10-Internet Explorer 11의 경우 첫 번째 ν΄λ¦­μ—μ„œ μž…λ ₯에 μ΄ˆμ μ„ 맞좜 수 μ—†μ§€λ§Œ 더블 클릭은 μž‘λ™ν•©λ‹ˆλ‹€. GIF 확인 :

dnd

μΆ”κ°€ μž…λ ₯으둜 κ°„λ‹¨ν•œ 예제λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

browser bug bug wontfix

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

ν•΄κ²° 방법을 μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

<input ... onMouseDown={ (e) => e.target.focus(); }/>

IE11μ—μ„œ ν…ŒμŠ€νŠΈ

λͺ¨λ“  9 λŒ“κΈ€

λ‚˜λŠ” Windows 컴퓨터가 μ—†μœΌλ―€λ‘œ λ””λ²„κΉ…ν•˜κΈ°κ°€ μ–΄λ €μšΈ κ²ƒμž…λ‹ˆλ‹€.

@kesne κ·€ν•˜μ˜ 응닡에 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€ :) 예, μ‹œλ„ν•΄ λ³΄μ•˜μ§€λ§Œ Windows μ‹œμŠ€ν…œλ„ μ—†μŠ΅λ‹ˆλ‹€ ... 맀우 κΉŒλ‹€λ‘œμš΄ λ²„κ·Έμ΄μ§€λ§Œ IE λ˜λŠ” IE λ Œλ”λ§μ—μ„œ 이벀트 였λ₯˜μΈμ§€ μ—¬λΆ€λŠ” λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€ ... μ–΄μ¨Œλ“  , μ œλŒ€λ‘œ λ””λ²„κΉ…ν•˜λŠ” 방법을 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€ 😞

@kesne μ•ˆλ…•ν•˜μ„Έμš”! λ””λ²„κΉ…ν•˜λŠ” 방법과이 버그λ₯Ό 찾을 μˆ˜μžˆλŠ” μœ„μΉ˜μ— λŒ€ν•œ 톡찰λ ₯이 μžˆμŠ΅λ‹ˆκΉŒ? λΆˆν–‰νžˆλ„, λ‚˜λŠ” κ·Έλ ‡κ²Œ ν• λ§Œ 큼 μΆ©λΆ„νžˆ μˆ™λ ¨λ˜μ–΄ μžˆλ‹€κ³  μƒκ°ν•˜μ§€ μ•ŠμœΌλ―€λ‘œ 이것을 λ””λ²„κ·Έν•˜κ³  μˆ˜μ •ν•˜λŠ” 방법을 μ•Œλ € μ£Όμ‹œλ©΄ μ‹œλ„ν•΄ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

λ“œλž˜κ·Έ κ°€λŠ₯ν•œ ꡬ성 μš”μ†Œμ˜ μžμ‹ 인 μž…λ ₯ μƒμžμ— λŒ€ν•΄ λΉ„μŠ·ν•œ λ¬Έμ œκ°€ λ°œμƒν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. IE11 λ˜λŠ” Edgeμ—μ„œ μ΄λŸ¬ν•œ μž…λ ₯ μƒμžμ— μ»€μ„œλ₯Ό κ°€μ Έ 였렀면 두 번 ν΄λ¦­ν•΄μ•Όν•©λ‹ˆλ‹€. λ˜ν•œ μž…λ ₯ μƒμžμ—μ„œ ν…μŠ€νŠΈλ₯Ό ν΄λ¦­ν•˜κ³  λ“œλž˜κ·Έν•˜μ—¬ 선택할 수 μ—†μŠ΅λ‹ˆλ‹€.

이것은 IE10, IE11 및 Edge의 μ•Œλ €μ§„ 버그이며 2014 년에 MSμ—λ³΄κ³ λ˜μ—ˆμ§€λ§Œ MSκ°€ μ›ν•˜μ§€ μ•Šκ±°λ‚˜ μˆ˜μ •ν•  μˆ˜μ—†λŠ” κ²ƒμœΌλ‘œ λ³΄μž…λ‹ˆλ‹€ : https://connect.microsoft.com/IE/feedback/details/ 927470 / ie-11-input-field-of-type-text-does-not-respond-to-mouse-clicks-when-ancestor-node-has-draggable-true 및 https://stackoverflow.com/a/ 27160905

μž…λ ₯을 가리 킀지 μ•Šμ„ λ•Œ λ“œλž˜κ·Έ μ†ŒμŠ€ 만 μ—°κ²°ν•˜μ—¬μ΄ 문제λ₯Ό ν•΄κ²°ν•  μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

  render() {
    const content = (
      <div>
        <input
           ...restOfProps
           onMouseOver={ () => this.setState({ dragSourceEnabled: false }); }
           onMouseOut={ () => this.setState({ dragSourceEnabled: true }); }
        />
      </div>
    );

    return this.state.dragSourceEnabled ? this.props.connectDragSource(content) : content;
  }

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” λ‹€λ₯Έ 방법이 μžˆμŠ΅λ‹ˆκΉŒ?
이 문제의 μƒνƒœλŠ” μ–΄λ–»μŠ΅λ‹ˆκΉŒ?

ν•΄κ²° 방법을 μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

<input ... onMouseDown={ (e) => e.target.focus(); }/>

IE11μ—μ„œ ν…ŒμŠ€νŠΈ

이 λ¬Έμ œλŠ” 졜근 ν™œλ™μ΄ μ—†μ—ˆκΈ° λ•Œλ¬Έμ— μžλ™μœΌλ‘œ 였래된 κ²ƒμœΌλ‘œ ν‘œμ‹œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 더 이상 ν™œλ™μ΄ λ°œμƒν•˜μ§€ μ•ŠμœΌλ©΄ νμ‡„λ©λ‹ˆλ‹€. κ·€ν•˜μ˜ 기여에 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰