Maison > interface Web > js tutoriel > Méthode Javascript pour contrôler les compétences format_javascript du temps d'entrée

Méthode Javascript pour contrôler les compétences format_javascript du temps d'entrée

WBOY
Libérer: 2016-05-16 16:17:30
original
1681 Les gens l'ont consulté

L'exemple de cet article décrit la méthode Javascript contrôlant le format de l'heure d'entrée. Partagez-le avec tout le monde pour votre référence. L'analyse spécifique est la suivante :

J'ai déjà fait une entrée au format de temps de contrôle Javascript, principalement en utilisant des événements keydown et keyup, mais j'ai senti que l'écriture était très compliquée et qu'il y avait des bugs.

Aujourd'hui, j'ai découvert la différence entre un événement keypress, keydown et keyup. C'est à peu près comme suit (je ne sais que cela pour l'instant) :

keydown : Déclenché lorsque la touche est enfoncée. Le keyCode peut être obtenu via l'événement, et la valeur avant la saisie de la zone de texte peut être obtenue

;

keyup : Déclenché lorsque la clé est affichée (relâchée). Le keyCode peut être obtenu via l'événement, et la valeur après saisie dans la zone de texte peut être obtenue ;

keypress : Cet événement est fondamentalement le même dans Chrome et IE, mais Firefox est un peu différent  ;

1. Dans Chrome et IE : tant que la touche enfoncée peut faire apparaître des caractères dans la zone de texte, elle sera déclenchée (comme la saisie de lettres, de chiffres, de symboles, etc.). Le keyCode peut être obtenu via un événement, et event.key n'est pas défini ; les caractères qui ne peuvent pas apparaître ne seront pas déclenchés (tels que les touches fléchées, Accueil, Retour arrière, etc.)

2. Dans Firefox : les lettres, les chiffres, les symboles, les directions, le retour arrière et d'autres touches peuvent être déclenchés, et le nom de la clé peut être obtenu via event.key Si la touche enfoncée peut générer des caractères, event.keyCode est 0. Si les caractères ne peuvent pas être générés, event.keyCode est le code ASCII correspondant

Retour au sujet, regardons directement le code (l'événement mentionné ci-dessus est équivalent à e dans le code ci-dessous) :

Copier le code Le code est le suivant :
var isFF = /firefox/i.test(navigator. agent utilisateur);
$("entrée").on({
Keyup : fonction (e) {
​ ​ !/^[d:] $/.test(e.target.value) && (e.target.value = "");
},
Appui sur une touche : fonction (e) {
Si (isFF && e.keyCode !== 0) {
/// Appuyer sur n'importe quelle touche dans Firefox déclenchera l'événement keypress, tandis que dans IE/Chrome, appuyer uniquement sur la touche pouvant afficher des caractères déclenchera
                             /// Pour Firefox, e.keyCode!==0 signifie que l'une des touches de retour arrière, de direction, d'accueil, etc. est enfoncée
         } autre {
Si (e.target.value.length > 7)
                       return false ;
Si (/d{2}$/.test(e.target.value)) {
                     e.target.value = ':';
            }
            var char = String.fromCharCode(e.keyCode === 0 ? e.which : e.keyCode);
Si (!/^d/.test(char))
                       return false ;
>
>
});
Utilisez isFF && e.keyCode !== 0 pour distinguer les clés qui peuvent générer des caractères dans Firefox et les clés qui ne peuvent pas générer de caractères puisque e.keyCode dans Firefox peut ne pas être en mesure d'obtenir la valeur, e.which est. utilisé à la place.

keyup est utilisé pour résoudre le problème de la possibilité de saisir du chinois ou des lettres lors de l'utilisation de la méthode de saisie.

Récupérez le caractère correspondant au code ASCII via String.fromCharCode().

J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal