Este redactorEncontré un comportamiento interesante de Chrome UX al pegar. Chrome aplasta espacios cuando se pega en la barra de direcciones o en archivos window.prompt
. Pero no se aplasta al pegar en los campos de entrada o en la consola.
Aquí hay un fragmento ejecutable con entradas y salidas de muestra.
En Chrome:
input | typed | copy/pasted
"h e l l o w o r l d" | 9 spaces | 9 spaces
"hello world" | 9 spaces | 1 spaces
En Firefox:
input | typed | copy/pasted
"h e l l o w o r l d" | 9 spaces | 9 spaces
"hello world" | 9 spaces | 9 spaces
var str = window.prompt('Enter a few spaces.');
var spaces = (str.match(/ /g) || []).length;
console.log(`You entered ${spaces} spaces`);
¿Este comportamiento está documentado en alguna parte de Chrome? No puedo encontrar esto mediante una búsqueda superficial. ¿Debería considerarse esto un error de Chrome? Por un lado, podría ser agradable ayudar a ciertos usuarios, pero por otro lado, Chrome no respeta las instrucciones explícitas de los usuarios.
¿Existe alguna forma de prevenir este comportamiento o solucionarlo?
Más hallazgos sobre Chrome 65 en Linux:
Usando el búfer de copia de selección X (seleccionar, hacer clic con el botón central), los espacios se conservan al pegar en una window.prompt
entrada. Pero los espacios sonnose conserva al pegar en la barra de direcciones.
Al usar ctrl+c, ctrl+v, los espacios no se conservan ni en window.prompt
la barra de direcciones.
Los comentaristas informan que este comportamiento no está presente en OSX.