Introducción

Instalación

Preguntas frecuentes (faq)

Sintaxis, palabras clave y funciones integradas

Distribución estándar

Implementación del import

Interfaz del navegador

Introducción - DOM API
Creando un documento
Accediendo a los elementos
Atributos, propriedades y métodos

Eventos
Eventos del ratón
Eventos del teclado
Eventos de foco
Eventos de arrastre

Query string

Usando objetos y librerías Javascript

Módulos específicos de Brython

El módulo integrado `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

javascript

Trabajando con Brython

Opciones de la función brython()
Testing y depuración
Desplegando una aplicación

Cookbook

Hola Mundo !
Insertar contenido en un elemento
Marcado HTML (bold,italic...)
Tabla HTML
Añadir (*bind*) y eliminar (*unbind*) eventos
Handle options in a SELECT
Arrastrar y soltar
Obtener el contenido de un elemento
Leer el contenido de un fichero
Almacenar objetos localmente
Ejemplo de onmouseover
 

Problema

Almacenar objetos localmente usando 'local storage' disponible en HTML5

Solución

Brython proporciona un módulo llamado browser.local_storage que permite almacenar cadenas de valores asociados a cadenas de claves

Almacenar valor

from browser import document
from browser.local_storage import storage

storage['brython_test'] = document['zone'].value

Mostrar valor almacenado

from browser import alert
from browser.local_storage import storage

alert(storage['brython_test'])

Si un objeto Python puede ser serializado mediante el módulo json, podríamos almacenar la versión serializada para, más tarde, volver a obtener el objeto original :

from browser import alert
from browser.local_storage import storage
import json

a = {'foo':1,1515:'Marignan'}

storage["brython_test"] = json.dumps(a)

b = json.loads(storage['brython_test'])
alert(b['foo'])
alert(b['1515'])

Ten cuidado ya que json convierte las claves del diccionario a una cadena. Debido a ello es por lo que hemos usado b['1515'] en lugar de b[1515] en el ejemplo anterior