¿Cuál es la mejor manera de abrir y escribir (guardar) contenido en un iframe?

Debe intentar evitar implementar esto por su cuenta, si puede. Proyectos como TinyMCE (http://tinymce.moxiecode.com/) se han empeñado en hacer que esto funcione en todos los navegadores, porque las especificaciones / atributos designMode / contenteditable son un desastre profano de una situación para sumergirse. Se ahorrará semanas de tortura al usarlas / adaptarlas (o cualquier otro editor, su llamada). No siempre es divertido calzar tus cosas en su modelo, pero he encontrado que es una tarea mucho más fácil que implementarlas de manera personalizada.

Dicho esto, he tenido que hacer esto desde cero, y en general no es una tarea divertida, porque los eventos simplemente se disparan de forma extraña cuando estás en designMode, y todo también depende de lo que estás permitiendo que el usuario edite. Si los limita a ciertas “zonas”, puede observar esas zonas y guardar periódicamente los cambios, y observar el evento de descarga en la ventana para capturar un guardado final.

Como referencia, fui el desarrollador principal del producto Site Builder para Webs.com durante aproximadamente un año, que se enfrenta a todos estos problemas de forma regular (al igual que cualquier Site Builder no flash).