2010-07-16 8 views
5

Der folgende Code sollte es ermöglichen, sich zu verstecken/zeigen die CKEditor FormWie verstecken und zeigen Sie einen CKEditor mit jQuery?

<a onClick="$('#form1').hide();">Hide</a> 
<a onClick="$('#form1').show();">Show</a> 
<form action="sample_posteddata.php" method="post" id="form1"> 
    <textarea id="editor1" name="editor1">blabla</textarea> 
    <script type="text/javascript"> CKEDITOR.replace('editor1'); </script> 
    <input type="submit" value="Submit" /> 
</form> 

Allerdings funktioniert dieser Code auf Chrome in Ordnung, aber auf Firefox, sobald ich den Editor (ein einmal gewechselt haben ‚verstecken‘ durch ein "gefolgt klicken show 'click), es wird nicht editierbar !!

Wie kann ich es in jedem Browser funktionieren lassen?

Vielen Dank.

Antwort

2

Es scheint keine echte Abhilfe zu haben.

Weitere Informationen finden Sie unter here. Die einzige Lösung ist, auf CKEditor neue Version 3.4 zu warten.

2

Sieht aus wie dies könnte Ihnen helfen:

http://dev.ckeditor.com/ticket/544

Im Bericht ich sie verknüpft zeigen versuchen, etwas wie folgt aus:

if (frames[0]) { 
    frames[0].FCK.EditingArea.MakeEditable(); 
} 
+0

I Ich werde deinen Vorschlag ausprobieren ... aber der Fehler, den du gesehen hast, ist als FIXED markiert und ich benutze die letzte Version von CKEditor. – fabien7474

+0

Ich habe es versucht, aber es funktioniert nicht (FCK wird nicht mehr in CKEditor Version 3.X verwendet). Hast du eine andere Idee? – fabien7474

+0

Haben Sie eine Website, auf der ich testen kann? – spinon

1

es in einem div zB gewickelt Ausprobieren: <div id="fckz"> <form >...</form> </div> und machen Sie das ausblenden auf dem div anzeigen.

+1

Ich habe es schon versucht. Überhaupt nicht funktioniert. – fabien7474

3

Lösung ist:

// Hide form 
CKEDITOR.instances.editor1.updateElement(); 
CKEDITOR.instances.editor1.destroy(); 
$('#form1').hide(); 
//Show form 
CKEDITOR.replace('editor1', {height: "220px", skin: "v2"}); 
$('#form1').show(); 
+1

Thx. Ich werde es versuchen. Inzwischen bin ich zu MarkItUp gewechselt ... – fabien7474

2
<div id="container">    
    <textarea class="ckeditor" cols="80" id="editor1" name="editor1" rows="10"></textarea> 
</div> 
<p> 
    <input type="button" value="jQuery Hide" onclick="$('#container').hide('fast');" /> 
    <input type="button" value="jQuery Show" onclick="$('#container').show('fast');" /> 
</p>