Chosen: Elegido en el problema de desplazamiento del Ipad, selección única, problema de clic, selección múltiple

Creado en 28 mar. 2015  ·  41Comentarios  ·  Fuente: harvesthq/chosen

La solución reciente:

2119 Corregir la propagación de eventos táctiles

Parece que rompe otras funcionalidades elegidas en Ipad (probado en Ipad 3, última versión elegida).
Problemas:

  • selección única: el desplazamiento de la lista desplegable ya no funciona
  • selección múltiple: eliminar los elementos seleccionados es imposible y después de la primera vez, un clic en la ventana de selección no muestra la lista desplegable
    Estos problemas se pueden reproducir usando un Ipad en el sitio de prueba estándar elegido: http://harvesthq.github.io/chosen/ en los ejemplos de selección estándar y selección múltiple.
    Probablemente tengan que ver con la corrección # 2119, ya que la funcionalidad estaba bien antes.
Bug Has Solution

Comentario más útil

Estoy experimentando el mismo problema. Me las arreglé para encontrar una solución alternativa, que implica comentar el evt.preventDefault () en touchstart.chosen que se implementó con # 2119

      this.container.bind('touchstart.chosen', function(evt) {
        _this.container_mousedown(evt);
        //return evt.preventDefault();
      });
      this.container.bind('touchend.chosen', function(evt) {
        _this.container_mouseup(evt);
        return evt.preventDefault();
      });

Todos 41 comentarios

También estoy experimentando el problema que ve @donthebike .

Aquí igual

El mismo problema aqui. Tanto en IOS como en Android. ¿Alguna ETA fijada?
Gracias.

También viendo este problema.

El mismo problema aquí con respecto al icono de anulación de selección (la cruz) no funciona para eliminar las opciones seleccionadas en los dispositivos táctiles. Sin embargo, la tecla de retroceso todavía funciona para eliminar opciones.

He probado antes / después de la corrección # 2119 (usando git bisect) para confirmar que el problema fue introducido por esa confirmación. Probado en Safari y Chrome en iPad, y también Chrome en tableta Android.

Mismo problema que @ AmirS2. Pero solucionó el evento de clic cuando la pantalla se desplaza mientras se abre el menú desplegable.

Mismo problema.

Estaba teniendo el mismo problema más un problema de selección en Android. Seguí adelante y eliminé todos los eventos táctiles como una solución fácil. Todo funciona tanto para Android como para iOS, excepto que cuando se selecciona una opción, inicialmente no se resalta en los dispositivos móviles. Sin embargo, solo estoy usando la selección única. Tampoco tengo mucha experiencia con los eventos táctiles, por lo que no estoy seguro de si hubo una razón específica por la que se usaron en este caso.

El mismo problema aquí. La desactivación de todos los eventos táctiles soluciona el problema, como dijo @nlaitchison . Pero no creo que esto sea una solución permanente. Tiene alguna idea sobre esto?

Estoy experimentando el mismo problema. Me las arreglé para encontrar una solución alternativa, que implica comentar el evt.preventDefault () en touchstart.chosen que se implementó con # 2119

      this.container.bind('touchstart.chosen', function(evt) {
        _this.container_mousedown(evt);
        //return evt.preventDefault();
      });
      this.container.bind('touchend.chosen', function(evt) {
        _this.container_mouseup(evt);
        return evt.preventDefault();
      });

También veo este problema. Muy molesto para los usuarios de dispositivos móviles.

Estimado @vbanuelos , su solución no me solucionó el problema. Que versión usas ? 1.4.2?

@ptrussart - eso es correcto. V 1.4.2

¡Solo pensé en tirar mis dos centavos! Esto también es un problema para mí. Mi solución fue simplemente deshabilitar elegido en iPads, lo que puede hacer cambiando la línea 532 del archivo jquery de

      if (/iP(od|hone)/i.test(window.navigator.userAgent)) {
        return false;
      }

para

      if (/iP(od|ad|hone)/i.test(window.navigator.userAgent)) {
        return false;
      }

Tengo el mismo problema de desplazamiento, la solución de @vbanuelos me ayudó, ¡gracias!

+1 corrección de @vbanuelos . Muchas gracias. Probado en Safari y Chrome bajo iOS8.3 en una sola lista de selección.

La solución de @vbanuelos me ayudó, ¡gracias!

¡Sí! +1 corrección de @vbanuelos

¿Esta solución se volverá a fusionar o hay algo que bloquea?

¿Esta solución se volverá a fusionar o hay algo que bloquea?

¿Algo nuevo sobre esto?

@ptrussart : parece que mi solución está funcionando para la mayoría. ¿Quizás se pueda implementar en la última versión?

Sin embargo, ahora mismo está codificado. :(

Acabo de recibir a un colega que tuvo dificultades para codificar la solución alternativa preventDefault() mencionada anteriormente.

¿Hay algún problema con esto? Veo una confirmación que elimina la línea y una confirmación que revierte la eliminación.

Muchas gracias.

@vbanuelos Eso es genial

Reemplace la línea 1004 en el archivo elegido.jquery.js
close_link.bind('click.chosen', function(evt) {
por
close_link.bind('touchstart.chosen click.chosen', function(evt) {

@ josemigueldel85 esta podría ser una pregunta estúpida, pero ¿dónde se pretende implementar la solución rápida para el soporte táctil móvil? Estoy hablando de lo siguiente de tu publicación anterior.

// Chosen touch support.
    if ($('.chosen-container').length > 0) {
      $('.chosen-container').on('touchstart', function(e){
        e.stopPropagation(); e.preventDefault();
        // Trigger the mousedown event.
        $(this).trigger('mousedown');
      });
    }

Descargue el archivo adjunto en la página web. http://realize.be/mobile-support-chosen

elegido.jquery.min_.js.txt

Este problema no solo ocurre en iPad, sino también en tabletas Android.

Además, aún es posible eliminar opciones usando la tecla de retroceso

la corrección funciona, pero se aplica a la versión 1.1 elegida del archivo ... ¿alguna forma de parchear la última versión? o háganos saber qué se ha modificado en él? Gracias

@vbanuelos usando este enfoque en v1.6.1, funciona bien en ipad (simulador de Chrome), ¿conoce las consecuencias de este enfoque?

Tengo el mismo problema. ¿Hay alguna manera de agregar el enfoque @vbanuelos sin editar el archivo fuente? ¿Como un truco que podemos agregar al script de nuestro propio sitio en lugar de editar el archivo chosen.min.js directamente? Tengo este problema en el ipad donde elegido no se puede desplazar incluso con la versión actual.

Veo que el elegido se desactiva en el teléfono móvil, pero no en el iPad. Creo que será de ayuda si podemos desactivar la opción elegida en iPads y tabletas al igual que en los móviles. ¿Hay alguna forma de hacer esto?

Hola a todos,

Estoy experimentando este problema y estoy buscando una solución real.

¿Lo arreglaste en alguna versión? ¿Tiene una hora estimada de llegada?

¿Debo actualizar la biblioteca elegida?

@cosechahq / desarrolladores-elegidos

Gracias por adelantado

mi solución funcionó para la selección múltiple, pero es inquietante una selección única elegida por
no dejar que funcionen en el primer clic, luego, cuando haga clic en la segunda vez,
El cuadro de selección funciona, así que aquí está uno de los pros y los contras,

Parece problemas solo que no hay soluciones

El martes 28 de febrero de 2017 a las 12:21 a.m., Virgile [email protected] escribió:

Hola a todos,

Estoy experimentando este problema y estoy buscando una solución real.

¿Lo arreglaste en alguna versión? ¿Tiene una hora estimada de llegada?

¿Debo actualizar la biblioteca elegida?

@cosechahq / desarrolladores-elegidos

Gracias por adelantado

-
Estás recibiendo esto porque hiciste un comentario.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/harvesthq/chosen/issues/2289#issuecomment-282812806 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AOb86iHEa_PhLl66NKAS_lFpi6MAJv9Yks5rgxsVgaJpZM4D2bZd
.

Parece que esto se corrigió en el maestro en octubre - # 2725 (mencionado anteriormente el 9 de octubre de 2016). ¿O está probando contra el maestro (y esta solución) y sigue siendo un problema?
Aún no ha habido una nueva versión, pero puede instalar la versión maestra a través de bower con
bower install https://github.com/harvesthq/chosen-package.git#master --save
[no use bower install https://github.com/harvesthq/chosen.git#master --save ya que este no es el repositorio compatible con Bower, es decir, no contiene los archivos js, css, etc. generados].
(Si ya tiene la versión 1.6.2 instalada, le dará la opción de sobrescribir la versión instalada). No es ideal, ya que todos los futuros bower install obtendrán la última versión, pero es una opción por ahora.

Hice lo que @mcjwb recomendó y usé la versión maestra. Normalmente uso lo que esté alojado en cdnjs.com, pero eso también está roto. Mantendré un ojo para que esto se solucione.

Recién lanzado Chosen 1.7.0 que incluye # 2725

Genial, lo arregló todo para mí. Muchísimas gracias.

  • selección única: el desplazamiento de la lista desplegable ya no funciona

Confirmado - arreglado.

  • selección múltiple: eliminar elementos seleccionados es imposible

Todavía no arreglado (elegido 1.7.0)

Gracias @snakexxx

Reemplace la línea 1004 en el archivo elegido.jquery.js
close_link.bind('click.chosen', function(evt) {
por
close_link.bind('touchstart.chosen click.chosen', function(evt) {

reemplace todos sus eventos 'click.chosen' con 'touchstart.chosen click.chosen'

¿Fue útil esta página
0 / 5 - 0 calificaciones