2010-10-15 116 views
1

我在我的一個項目中使用小型mce,客戶端不想使用小型mce的Horizo​​ntal工具欄。他想要一個集中的自定義工具欄,用戶可以在其中控制所有屬性,如文本顏色,文本類型,大小,背景以及使用模板設計網頁時需要做的每件事情。我使用默認工具欄配置了mce實例,並通過自定義工具欄控制屬性。這些屬性作爲一個整體應用於微小的mce實例。但現在需求已經出現了,文本編輯應該是MS辦公風格。這意味着,如果用戶將光標放在一個地方並改變顏色,則不會有任何影響,但是如果他從光標位置開始輸入文本應該具有最近設置的顏色。我試圖使用外部工具欄選項。但是,我的工作區域和自定義工具欄處於不同的z索引級別。所以,定位工具欄失敗。如果我將工具欄附加到我的自定義工具欄,它不可點擊。那麼,如何使用自定義工具欄調用微小的mce核心功能?如何在微小的mce中使用自定義工具欄?

或者,請提出,我應該改變編輯器嗎?那麼,我應該選擇哪一個?

編輯 根據該建議,我正在寫函數保存屬性樣式並將跨度插入插入位置。但是我面對一些問題,花了一整天的時間後就無法完成了。我可以使用下面的代碼在插入位置添加跨度。

marker = ed.selection.getBookmark(); 
ed.selection.moveToBookmark(marker); 
tinyMCE.execCommand('mceInsertContent',false,'<span id="mytitle"></span>'); 

但是,我仍然沒有輸入新的範圍內。另外,我無法弄清楚如何設置樣式到這個範圍。

回答

0

如果你的目標是讓你的tinymce像MS Office一樣行事,你應該寫一個自己的插件來處理這個問題。 我建議如果用戶已經把光標放在一個地方,並改變顏色,你這個顏色的設置保存到喜歡你的TinyMCE的實例:ed.color = 'choosencolor';

當用戶從現在開始打字,你可以在第一次擊鍵插入一個跨度將顏色設置爲CSS類或樣式屬性爲此跨度。

+0

這是否意味着我可以編寫一個插件來調用微型mce的核心功能?或者你建議的流程將由插件處理?我是編程新手,已經通過了插件文檔,但無法理解。你能提供另一個鏈接/文檔嗎? – KutePHP 2010-10-21 16:01:37

+0

是的,這是可能的,如果代碼功能不是你想要的,你可以創建自己的或擴展核心功能。嗯,我沒有其他鏈接,但是如果仔細查看插件目錄中已經存在的插件,它會很有幫助。這是我開始開發插件的方式。 – Thariama 2010-10-22 11:18:56

+0

您好Thariama,我試圖設置爲「ed.font-family = propertyValue」,但這會給出錯誤,而「ed.color = propertyValue」,正常工作。任何想法爲什麼發生這種情況? – KutePHP 2010-10-26 10:21:50