IntroductionInstallationLimitations du protocole "file"Questions fréquemment poséesSyntaxe, mots-clés et fonctions intégréesDistribution standardImplémentation de importPackages BrythonInterface avec le navigateur
Introduction - API DOM
Créer un document Accéder aux éléments Attributs, propriétés et méthodes Evénements Evénements souris Evénements clavier Evénements focus Evénements pour glisser-déposer Chaine de requête Interactions avec Javascript Modules intégrés propres à Brython
browser
browser.aio browser.ajax browser.html browser.local_storage browser.markdown browser.object_storage browser.session_storage browser.svg browser.template browser.timer browser.webcomponent browser.websocket browser.worker Widgets browser.widgets.dialog browser.widgets.menu interpreter javascript Travailler avec BrythonRecettes
Salut !
Insérer du contenu dans un élément Mise en forme HTML (gras, italique...) Table HTML Attacher / détacher des événements Gérer la sélection d'options dans un SELECT Glisser-déposer Obtenir le contenu d'un élément Lire le contenu d'un fichier Stocker des objets localement Exemple de onmouseover |
Evénements clavierDocumentation complète sur le site MDN Les événements relatifs au clavier sont
Attributs de l'objet
L'instance de |
altKey
booléen, indique si la touche Alt (ou Option sur Mac) était enfoncée quand l'événement clavier a été déclenché Il est normalement utilisé avec keypress, pour pouvoir tester si on a entré Alt+<key> ou seulement <key> |
ExempleSaisir du texte dans le champ ci-dessous, en appuyant ou pas sur la touche Alt
Codefrom browser import document
def altKey(ev):
document["traceAltKey"].text = f"altKey : {ev.altKey}"
document["altKey"].bind("keypress", altKey)
|
|||||||
key
Une chaine de caractères pour la touche enfoncée: - le caractère si la touche correspond à un caractère - une chaine qui décrit la touche pour les touches spéciales (par exemple "Control" pour la touche Ctrl) |
ExampleEntrer du texte dans le champ ci-dessous
Codefrom browser import bind, document
def keyevent(ev):
trace = document["traceKey"]
trace.text = f"type: {ev.type}, key: {ev.key}"
ev.stopPropagation()
document["key_keydown"].bind("keydown", keyevent)
document["key_keypress"].bind("keypress", keyevent)
document["key_keyup"].bind("keyup", keyevent)
|
|||||||
ctrlKey
booléen, indique si la touche Ctrl était enfoncée quand l'événement clavier a été déclenché Il est normalement utilisé avec keypress, pour pouvoir tester si on a entré Ctrl+<key> ou seulement <key> |
ExampleSaisir du texte dans le champ ci-dessous, en appuyant ou pas sur la touche CtrlCodefrom browser import document
def keypress(ev):
document["traceCtrlKey"].text = f"ctrlKey : {ev.ctrlKey}"
ev.preventDefault()
document["ctrlKey"].bind("keypress", keypress)
Notez que |
|||||||
code
une chaine de caractères qui caractérise la touche physique du clavier enfoncée cette valeur est la même quel que soit le caractère produit par l'appui sur la touche: par exemple sur un clavier AZERTY, l'appui sur la touche A donne comme code "KeyQ" |
ExamplePositionnez le curseur dans les champs de saisie ci-dessous et appuyez sur les touches du clavier. avec keydownavec keypress   avec keyup Codefrom browser import document
def keyCode(ev):
trace = document["traceKeyCode"]
trace.text = f"event: {ev.type}, code: {ev.code}"
ev.stopPropagation()
document["codeKeydown"].bind("keydown", keyCode)
document["codeKeypress"].bind("keypress", keyCode)
document["codeKeyup"].bind("keyup", keyCode)
|
|||||||
shiftKey
booléen, indique si la touche Majuscule était enfoncée quand l'événement clavier a été déclenché Il est normalement utilisé avec keypress, pour pouvoir tester si on a entré Shift+<key> ou seulement <key> |
ExampleSaisir du texte dans le champ ci-dessous, en appuyant ou pas sur la touche MajusculeCodefrom browser import document
def keypress(ev):
document["traceShiftKey"].text = f'shiftKey : {ev.shiftKey}'
document["shiftKey"].bind("keypress", keypress)
|