2009-03-17 17 views
4

Ich habe eine Website, die den FCKEditor verwendet. Ich möchte ein unglaublich einfaches Plugin erstellen: Wenn ein Benutzer Text auswählt und dann MyPluginIcon trifft, umgibt der Editor den Text in einem span-Tag mit einer bestimmten Klasse.FCKEditor - wie macht man ein einfaches Plugin?

es ist so einfach wie das Fett oder Kursiv-Taste, aber für:

<span class="blah">EtcEtc</span>

ich weit von einem JS-Experte bin, so habe ich suche ein Plugin zu kopieren. Ich habe im FCK-Wiki nachgeschaut, aber alle Plugins, die ich gefunden habe, sind wirklich komplex (Dateibrowser und was nicht). Kennen Sie ein super einfaches FCK-Plugin, auf dem ich mein Plugin basieren kann?

Danke!

Antwort

5

Beantworten Sie meine eigene Frage! Hoffentlich, wenn jemand das in der Zukunft findet, wird es helfen.

habe ich die Grunddatei von hier: http://www.iondev.lu/fckeditor/netnoi.txt

fand ich-und-ersetzen den „netnoi“ mit meinem eigenen Namen und unkommentiert das Symbol Linie ein Symbol (16x16) zu machen.

Und die Anweisungen, wie es zu installieren, um von hier: http://docs.fckeditor.net/FCKeditor_2.x/Developers_Guide/Customization/Plug-ins

Vergewissern Sie sich, dass das Plugin-Verzeichnis korrekt ist - in Drupal der Plugin-Ordner ist anders als ein Standard-FCK installieren.

EDIT: Anscheinend ist die netnoi.txt verschwunden. Hier ist, was ich verwendet habe:

/*** 
* Create blank command 
*/ 
var FCKPixelCaps_command = function() 
{ 

} 

/*** 
* Add Execute prototype 
*/ 
FCKPixelCaps_command.prototype.Execute = function() 
{ 
     // get whatever is selected in the FCKeditor window 
     var selection = FCK.EditorDocument.getSelection(); 

     // if there is a selection, add tags around it 
     if(selection.length > 0) 
     { 
       FCK.InsertHtml('<span class="caps">' + selection + '</span>'); 
     } else { 
       // for debugging reasons, I added this alert so I see if nothing is selected 
       alert('nothing selected'); 
     } 
} 

/*** 
* Add GetState prototype 
* - This is one of the lines I can't explain 
*/ 
FCKPixelCaps_command.prototype.GetState = function() 
{ 
     return; 
} 

// register the command so it can be use by a button later 
FCKCommands.RegisterCommand('PixelCaps_command' , new FCKPixelCaps_command()) ; 

/*** 
* Create the toolbar button. 
*/ 

// create a button with the label "Netnoi" that calls the netnoi_command 
var oPixelCaps = new FCKToolbarButton('PixelCaps_command', 'Pixels & Pulp Caps') ; 
oPixelCaps.IconPath = FCKConfig.PluginsPath + 'PixelCaps/caps.gif' ; 

// register the item so it can added to a toolbar 
FCKToolbarItems.RegisterItem('PixelCaps', oPixelCaps) ; 
+0

Froh, dass Sie es auf eigene Faust gelöst haben! – Ascalonian