FCKEditor - 如何制作一个简单的插件?

时间:2009-03-17 14:24:14

标签: javascript plugins fckeditor

我有一个使用FCKEditor的网站。我想创建一个非常简单的插件:当用户选择文本然后点击MyPluginIcon时,编辑器会围绕具有特定类的span标记中的文本。

所以它就像Bold或Italic按钮,但是对于:

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

我远离JS专家,所以我一直在寻找一个可以复制的插件。我查看了FCK wiki,但我找到的所有插件都非常复杂(文件浏览器等等)。你知道一个超级简单的 FCK插件吗?我的插件基础可以吗?

谢谢!

1 个答案:

答案 0 :(得分:5)

回答我自己的问题!希望如果有人在将来发现它会有所帮助。

我使用了这里的基本文件: http://www.iondev.lu/fckeditor/netnoi.txt

我用自己的名字找到并替换了“netnoi”,并取消注释了图标线以制作一个图标(16x16)。

以及如何从这里安装它的说明: http://docs.fckeditor.net/FCKeditor_2.x/Developers_Guide/Customization/Plug-ins

请务必检查插件目录是否正确 - 在drupal中,plugins文件夹与默认的FCK安装不同。

编辑:显然netnoi.txt已经丢失了。这是我使用的:

/***
 * 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 ) ;