2010-10-18 14 views

Répondre

8

Je n'ai pas IE8 à portée de main, mais essayez ceci: Je tirai ma machine virtuelle Windows, et cela fonctionne: http://www.jsfiddle.net/n25HE/ Tout ce que je ne faisais envelopper l'appel focus dans une fonction et l'appeler 10ms après votre gestionnaire d'événements terminé , comme ceci:

setTimeout(function() { 
    $('#txtValuation').focus(); 
}, 10); 

cela donne le temps IE pour rendre réellement le contenu et créer le contrôle du système d'exploitation pour la saisie de texte. IE ne peut pas se concentrer avant que le contrôle sous-jacent existe.

+1

Ceci est toujours un problème dans IE9. Comme vous allez probablement le rencontrer plus d'une fois dans une application, vous pouvez le refactoriser dans une fonction pour rester DRY comme expliqué ici: http://zadasnotes.blogspot.com/2011/01/let-ie-breath. html –

+0

Blog lien mort :-( –