javascript - validacion - No se puede prevenirDefault dentro del detector de eventos pasivo
validacion de formularios con javascript ejemplos (2)
Para manejar la lista clasificable en Framework7 cuando el usuario libera el elemento de clasificación actual en una nueva posición, puede usar este código:
$$(''li'').on(''sortable:sort'',function(event){
alert("From " + event.detail.startIndex + " to " + event.detail.newIndex);
});
Fiddle: https://jsfiddle.net/0zf5w4y7/
Estoy usando la lista ordenable de Framework7 y funciona bien, solo que no activa un evento cuando se cambia la lista.
Así que estoy probando algunos eventos incorporados:
$(''.sortable-handler'').on(''touchstart'', function (e) {
e.preventDefault();
alert(''touchstart'');
});
$(''.sortable-handler'').on(''touchmove'', function (e) {
e.preventDefault();
console.log(''touchmove'');
});
$(''.sortable-handler'').on(''touchcancel'', function (e) {
e.preventDefault();
console.log(''touchcancel'');
});
$(''.sortable-handler'').mouseleave(function (e) {
e.preventDefault();
console.log(''mouseleave'');
});
.. pero todo lo que consigo es:
No se puede prevenirDefault dentro del detector de eventos pasivo debido a que el objetivo se trata como pasivo. Consulte https://www.chromestatus.com/features/5093566007214080
¿Qué evento debo buscar para obtener la lista actualizada en cada orden?
Ver esta entrada de blog . Si está llamando a preventDefault
en cada touchstart
, también debería tener una regla CSS para deshabilitar el desplazamiento táctil como
.sortable-handler {
touch-action: none;
}