2011-12-08 30 views
0

我創建了一個新插件,因爲我找不到實際「有效」的插件,希望如果從頭開始,它可能會觸發。TinyMCE插件未在複合C1中觸發

插件只是用mailto:鏈接包裝選定的文本。

我已將插件添加到包含文件,按照以前的問題的以下響應:http://bit.ly/vGyQlE但是,它不起作用。

我已經進入國產化目錄,確定了Composite.Web.VisualEditor.en-us.xml爲處理本地化的文件下添加我的條目:

<string key="ToolBar.ToolTipMailTo" value="Mail To" /> 

但是,當我將鼠標懸停應該出現菜單項的「空白」塊,它返回(?)。這是我撿到一些更奇怪的東西的第一部分。當你實際點擊物品應該出現的位置時,什麼都不會發生。所以,我不能假設點擊事件已經得到了與圖像做,我重新寫的命令返回一個警告,點擊後:

tinymce.create('tinymce.plugins.MailTo', { 
    init : function(ed, url) { 

     ed.addButton('mailto', { 
      title : 'mailto.mailto_desc', 
      cmd : 'mceMailTo', 
      image : url + '/images/mailto.gif' 
    }); 

    ed.addCommand('mceMailTo', function() { 
    var selectedText = ed.selection.getContent({format : 'text'}); 
    var MailToLink = "alert(" + selectedText + ");"; 
    ed.execCommand('mceInsertContent', false, MailToLink); 
}); 

我已經添加了「電子郵件地址」元素visualeditor.js:

plugins : "...,paste,lists,mailto", 

並確保「mailto」插件位於tiny_mce的插件目錄下。我已經儘可能多次清除緩存,但什麼都沒有?在Composite中爲tiny-mce添加新的插件可能會很困難嗎?

回答

1

1)複合C1不支持內部tiny_mce按鈕 您是否將按鈕添加到編輯器? 在文件複合\內容\雜項\編輯\可視化編輯器\包括\ toolbarsimple.inc添加

<ui:toolbargroup> 
      <ui:toolbarbutton cmd="mceMailTo" tooltip="Mail to" image="${icon:paste}" isdisabled="false" /> 
    </ui:toolbargroup> 

2)你寫的有效插件代碼?

(function() { 
tinymce.create('tinymce.plugins.MailTo', { 
    init: function (ed, url) { 
     ed.addCommand('mceMailTo', function() { 
      var selectedText = ed.selection.getContent({ format: 'text' }); 
      var MailToLink = "alert(" + selectedText + ");"; 
      ed.execCommand('mceInsertContent', false, MailToLink); 
     }); 
    } 
}); 
tinymce.PluginManager.add('mailto', tinymce.plugins.MailTo); })();