Per impostare il focus su una
textarea <textarea id="txt-body"></textarea>
<button type="button" id="btn">set focus</button>
normalmente è sufficiente invocare, da
JavaScript, il metodo
focusdocument.getElementById("txt-body").focus()
ma se cerchiamo di impostare il focus dall'interno di un evento
document.getElementById("btn").addEventListener("click", () => {
document.getElementById("txt-body").focus();
});
non funziona.
Per farlo funzionare va introdotto un
ritardo con
setTimeoutdocument.getElementById("btn").addEventListener("click", () => {
setTimeout(() => {
document.getElementById("txt-body").focus();
}, 0);
});