Estoy codificando un editor, tengo una barra de herramientas de menú, quiero mantener mi selección y la posición del cursor en el área de texto cuando hago clic en la barra de herramientas. He leído la mayoría de las publicaciones relevantes, sin embargo, ninguna se aplica.
const app = document.querySelector('button'); const editor = document.querySelector('textarea'); // method 1 /* editor.addEventListener('blur', ()=>{ editor.focus(); }); */ // method 2 /* app.addEventListener('click', e=>{ e.preventDefault(); e.stopImmediatePropagation(); e.stopPropagation(); }) */
<button>app</button> <textarea></textarea>
De su pregunta, desea enfocar el área de texto cuando el usuario hace clic en el botón, debajo del código provisto, avíseme si esto resuelve su problema.
const app = document.querySelector('button'); const editor = document.querySelector('textarea'); // method 1 /* editor.addEventListener('blur', ()=>{ editor.focus(); }); */ // method 2 app.addEventListener('click', e=>{ e.preventDefault(); e.stopImmediatePropagation(); e.stopPropagation(); editor.focus(); })
<button>app</button> <textarea></textarea>
const app = document.querySelector('button'); const editor = document.querySelector('textarea'); // method 3 app.addEventListener('click', e=>{ setTimeout(()=>editor.focus()); })
<button>app</button> <textarea></textarea>
texto fuerte