En caso de que tenga control de todo su código, no hay llamadas extraterrestres $(input).focus()
que setFocus()
.
Usar una variable global es una forma correcta para mí.
var globalIsHuman = true;
$('input').on('focus', function (){
if(globalIsHuman){
console.log('hello human, come and give me a hug');
}else{
console.log('alien, get away, i hate you..');
}
globalIsHuman = true;
});
// alien set focus
function setFocus(){
globalIsHuman = false;
$('input').focus();
}
// human use mouse, finger, foot... whatever to touch the input
Si algún extraterrestre todavía quiere llamar $(input).focus()
desde otro planeta. Buena suerte o mira otras respuestas