Al usar una entrada InputEvent beforeinput puede consultar getTargetRanges() que devuelve una matriz de rangos estáticos que se verán afectados por el evento de entrada.
¿Cuál es un escenario de ejemplo en el que getTargetRanges() devolverá más de un rango? ¿O devuelve una matriz 'por si acaso' habrá tal evento en el futuro? El motivo de la pregunta es que me gustaría probar correctamente el código que se basa en el valor de retorno de getTargetRanges() .
MDN: https://developer.mozilla.org/en-US/docs/Web/API/InputEvent/getTargetRanges
Especificaciones: https://w3c.github.io/input-events/#overview
Patio de juegos:
document.querySelector('div').addEventListener('beforeinput', (event) => { console.log(event.inputType, event.getTargetRanges().length); if (event.getTargetRanges().length > 1) { alert('how?'); } }) <div contenteditable> <p>Hello world</p> <p>This is a tyypo</p> </div>Las selecciones múltiples son un ejemplo. Por ejemplo, en Firefox, haga doble clic en una palabra, mantenga presionada la tecla Ctrl/Comando, haga doble clic en otra palabra, retroceda.