2009-10-04 8 views
5
<div style="display:none;"> 
    <div id="wmd-editor" class="wmd-panel"> 
     <div id="wmd-button-bar"></div> 
     <textarea id="wmd-input"></textarea> 
    </div> 
    <div id="wmd-preview" class="wmd-panel"></div> 
    <div id="wmd-output" class="wmd-panel"></div> 
</div> 

ver, estoy siguiendo las ADM-test.html de derobins de ADM, excepto poner esas cosas dentro de un div oculto.¿Cómo ocultar el editor wmd inicialmente?

uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMNSHTMLTextAreaElement.selectionStart]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://localhost/derobins-wmd-980f687/wmd.js :: anonymous :: line 490" data: no] 
uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMNSHTMLTextAreaElement.selectionStart]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://localhost/derobins-wmd-980f687/wmd.js :: anonymous :: line 490" data: no] 

Respuesta

3

Puede usar la técnica de la izquierda, si al complemento no le gusta que los elementos no tengan alto/ancho.

<div style="position: absolute; left: -1000px; width: 100px"> 
+0

¡Este es un gran truco! – Misier

8

Además de ocultar todo el panel con el área de texto dentro de ella, es necesario asegurarse de que área de texto en sí tiene problemas display:none y se desaparecerá entonces. De lo contrario, wmd no detectará que textarea no se muestra y tratará de hacer cálculos en él y obtendrá excepciones como usted dijo.

Simplemente colocando elementos fuera de la pantalla no es posible o al menos muy problemático con algunos diseños. Además, los lectores de pantalla aún detectarán esos elementos y la accesibilidad sufrirá.

Creo que ya resolvió el problema, pero espero que ayude a alguien.

+0

Gracias, tuve este mismo problema, busqué en Google y encontré esto. Añadiendo 'display: none' al textarea así como también al wrapper div funcionó. –

+0

Merece la pena señalar que si usa las pestañas jquery (así es como descubrimos este problema) puede simplemente agregar el css '.ui-tabs-hide textarea {display: none; } 'y esto tendrá un efecto similar. –

Cuestiones relacionadas