React-dnd: Incapaz de clicar em uma entrada no IE

Criado em 23 mai. 2016  ·  9Comentários  ·  Fonte: react-dnd/react-dnd

Obrigado por um trabalho tão árduo!

Quando há algum texto em uma caixa de entrada, os usuários não podem clicar em uma caixa de texto para fazer edições, eles precisam excluí-la no final. Eu poderia reproduzi-lo no IE 9 e 10.

Além disso, para Win10 - Internet Explorer 11, não consigo concentrar as entradas no primeiro clique, mas o clique duplo funciona. Verifique o gif:

dnd

Estou usando seu exemplo simples com entradas adicionais

browser bug bug wontfix

Comentários muito úteis

Estou usando uma solução alternativa:

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

testado no IE11

Todos 9 comentários

Não tenho um computador com Windows, então será um desafio depurar: /

@kesne, obrigado pela sua resposta :) Sim, eu tentei, mas também não tenho uma máquina Windows ... é um bug muito complicado, mas não sei se é um erro de evento no IE ou na renderização do IE ... de qualquer maneira , não tenho certeza de como depurar isso corretamente 😞

@kesne hey! Você teria alguma ideia de como depurá-lo e onde encontrar esse bug? Infelizmente, eu não acho que sou habilidoso o suficiente para fazer isso, então se você puder me dizer como depurar e consertar isso, eu poderia tentar.

Acredito que estou tendo um problema semelhante para caixas de entrada que são filhas de um componente arrastável. É necessário clicar duas vezes para obter um cursor em qualquer uma dessas caixas de entrada no IE11 ou Edge. Também torna impossível clicar e arrastar para selecionar o texto nas caixas de entrada.

Este é um bug conhecido no IE10, IE11 e Edge e foi relatado à MS em 2014, mas parece que a MS não quer / não é capaz de corrigi-lo: https://connect.microsoft.com/IE/feedback/details/ 927470 / ie-11-input-field-of-type-text-does-not-respon-to-mouse-clicks-when-ancestor-node-has-draggable-true e https://stackoverflow.com/a/ 27160905

Consegui contornar isso conectando apenas a fonte de arrasto, sem passar o mouse sobre a entrada.

  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;
  }

Existem outras maneiras de resolver isso?
Como está o estado desse problema?

Estou usando uma solução alternativa:

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

testado no IE11

Este problema foi automaticamente marcado como obsoleto porque não teve atividades recentes. Ele será fechado se nenhuma outra atividade ocorrer. Obrigado por suas contribuições.

Esta página foi útil?
0 / 5 - 0 avaliações