2008-10-06 8 views
6

Estoy escribiendo un artículo sobre la edición de páginas con el fin de elegir a mano lo que realmente desea imprimir. Hay muchas herramientas (como "Imprimir lo que te gusta") pero también encontré este script. Alguien sabe algo al respecto? No he encontrado ningún tipo de documentación o referencias.Java Script para editar el contenido de la página sobre la marcha

javascript:document.body.contentEditable='true'; document.designMode='on'; void 0 

¡Gracias!

+0

Tengo curiosidad de por qué esto está etiquetado como "dcom", y ahora que me doy cuenta de que me pregunto si he leído mal la pregunta de alguna manera? – Grank

Respuesta

9

La propiedad contentEditable es lo que desea - Es compatible con IE, Safari (y por cromo como subproducto), y I piensa firefox 3 (alas no FFX2). Y bueno, también es parte de HTML5: D

Firefox 2 es compatible con designMode, pero está restringido a marcos individuales, mientras que la propiedad contentEditable se aplica a elementos individuales, por lo que puede hacer que su contenido editable se reproduzca mejor con su página : D

[Editar (olliej): ejemplo retirado como atributo contentEditable no superar los filtros de salida de SO (a pesar de trabajar en la vista previa) :(]

[Editar (olliej): he golpeado un muy simple demo para ilustrar cómo se comporta]

[Editar (olliej) : Entonces sí, el atributo contentEditable en la demostración vinculada funciona bien en IE, Firefox y Safari. El cambio de tamaño de Alas es una característica css3 que solo webkit parece soportar, e IE está haciendo todo lo posible para combatir casi todo el CSS. suspiro]

+0

¿hay alguna biblioteca js que haga lo mismo? – navyad

1

document.designMode es compatible con IE 4+ (que comenzó aparentemente) y FireFox 1.3+. Lo enciendes y puedes editar el contenido directamente en el navegador, es bastante truculento. Nunca lo había usado antes, pero parece que sería perfecto para recoger información imprimible.

Editado para decir: También parece funcionar en Google Chrome. Solo lo he probado en Chrome y Firefox, ya que esos son los navegadores en los que tengo una consola de JavaScript, por lo que no puedo garantizar que funcione en Internet Explorer ya que nunca lo he usado personalmente. Tengo entendido que se trata de una propiedad solo de IE que los otros navegadores recogieron y que actualmente no está en ningún estándar, por lo que me sorprendería que Firefox y Chrome lo admitan, pero IE se detuvo.

0

Permite la funcionalidad de edición incorporada del navegador donde esté disponible. Como se mencionó anteriormente, designMode es Gecko y contentEditable es para todos los demás (y se agregó a Gecko 1.9). Estas características se utilizan como base de (¿casi?) Todos los editores WYSIWYG creados con HTML/Javascript. Si simplemente está escribiendo/borrando, nada más debería ser necesario que el script que proporcionó. (Todo, desde 'vacío' en superfluo sin embargo.)

Para obtener documentación sobre cómo estas características se pueden utilizar en una aplicación, la mejor referencia es de Mozilla Midas specification (MSDN puede ser de alguna utilidad, así ...).

Cuestiones relacionadas