Maison > interface Web > tutoriel CSS > le corps du texte

Comment concentrer un champ de saisie cloné dans IE et Opera ?

Susan Sarandon
Libérer: 2024-10-31 13:23:01
original
384 Les gens l'ont consulté

How to Focus a Cloned Input Field in IE and Opera?

Problème de champ de saisie FOCUS dans IE et Opera

Problème :

Le code ci-dessous échoue pour focaliser le champ de saisie cloné dans Internet Explorer 7 :

function change() {
    var input = document.getElementById('pas');
    var input2 = input.cloneNode(false);
    input2.type = 'password';
    input.parentNode.replaceChild(input2, input);
    input2.focus();
}
Copier après la connexion

Solution pour IE :

Internet Explorer est notoirement « paresseux » lorsqu'il s'agit de focaliser les éléments. Pour résoudre ce problème, vous pouvez utiliser une fonction setTimeout :

setTimeout(function() { document.getElementById('myInput').focus(); }, 10);
Copier après la connexion

Solution pour Opera :

Dans Opera, vous pouvez rencontrer des problèmes pour définir le focus sur les éléments créés dynamiquement ou apparaître après le chargement de la page. Reportez-vous aux ressources suivantes pour connaître les solutions potentielles :

  • [Comment définir le focus dans l'index requis sur la zone de texte pour Opera](https://stackoverflow.com/questions/2099366/how-to-set- focus-in-required-index-on-textbox-for-opera)

Solution améliorée :

Pour gérer les cas où l'élément peut ne pas être disponible immédiatement, vous pouvez utiliser l'extrait suivant :

setTimeout(

    function( ) {

        var el = document.getElementById( "myInput" ) ;
        ( el != null ) ? el.focus( ) : setTimeout( arguments.callee , 10 ) ;

    }

, 10 ) ;
Copier après la connexion

Ce code tente de focaliser l'élément toutes les 10 millisecondes jusqu'à ce qu'il devienne disponible, résolvant ainsi les problèmes potentiels de chargement lent ou d'apparition retardée de l'élément.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal