Javascript HTML5 Capture du mot de code et écrire à Toile
Je suis en train d'écrire une application dans laquelle j'ai besoin de simuler un textarea. La seule façon que je sais comment l'aborder est de capturer le mot de code sur un événement clé. Comment pourrait-on prendre que le mot de code et, le soutien de l'utf-8, s'appliquent que sur la toile?
Acclamations
OriginalL'auteur Russell | 2010-09-16
Vous devez vous connecter pour publier un commentaire.
Cela semble être une mauvaise idée car il y a énormément plus et au-dessus de l'entrée de texte qu'un textarea vous donne gratuitement (caret, de sélection, de couper, de coller, glisser-déplacer, flèche de manutention, etc.), mais voici deux choses que vous devez faire :
<canvas>
untabindex
attribut de sorte qu'il peut recevoir le focus et ainsi augmenter les principaux événements;keypress
(paskeydown
) gestionnaire à l'<canvas>
élément de capture de saisie de texte.Code:
Tandis que la pression de touche de capture des codes de caractères, il ne tient pas compte de correction arrière. Pourquoi utiliser la touche au lieu de keydown?
Je voudrais utiliser
keydown
pour revenir en arrière et effacer le soutien. Pour la collecte de saisie de texte, même si,keypress
est le seul événement clé qui vous donne des données sur les caractères tapés est donc le seul choix. Voir unixpapa.com/js/key.htmlressource fantastique! Juste pour résumer ce que je comprends de recherche dans cet article et d'ailleurs, la différence est de scanner de code (keydown) v. code de caractère (keypress). Keydown va reconnaître ce qui touche pressée, mais n'est pas de les informer sur les combinaisons de touches (par exemple shift/caps-lock). Cela a bien fonctionné pour mon cas, parce que le cas n'était pas un problème, mais l'utilisation de keydown de ne pas définir un état de la capitalisation. Aussi, comme l'article le montre, keydown n'est pas culturellement agnostique et limitera la localisation de la/des problèmes de langue. Recommande fortement cet article si, très perspicace.
Oui, ça correspond à ma compréhension.
OriginalL'auteur Tim Down
À l'aide de jquery:
OriginalL'auteur Rohrbs
Avez-vous vu Bespin? Il est plus que juste un textarea de remplacement, mais il fait ce que vous voulez. Vous pourriez certainement regarder dans le code et la documentation, ou si elle répond à vos besoins, il suffit d'utiliser il.
Je vais reformuler - elle répond à l'exigence spécifique, ils se sont enquis: "Javascript HTML5 Capture du mot de code et écrire à Toile" uniquement Comme une toile d'éditeur de texte, ils capturent les touches tapées dans et afficher à l'aide de toile, entre autres choses.
OriginalL'auteur Russell Leggett