2017-01-03 15 views
0

刀尖我想改變工具提示TinyMCE的4「removeformatting」按鈕:改變用於TinyMCE的removeformatting按鈕

enter image description here

從「清除格式」到「清除所選格式。 「但是我無法找到TinyMCE代碼中定義這個按鈕的位置。

有人可以指向我的ed.addButton代碼嗎?

感謝

回答

1

通過它的外觀,你正在尋找的路線是:

<span id="mceu_61-text" class="mce-text">Clear formatting</span> 

所以一個簡單的JS搜索和重寫內部HTML會工作。但是,如果沒有選擇任何內容,此按鈕會清除文本上的所有格式,或者如果有選擇,則僅清除選定的文本。 (請注意,元素的ID將根據您所加載的是什麼工具條,這條線是從一個全功能的演示採取改變)

雖然實際的硬編碼字符串似乎位於

TinyMCE的/classes/ui/FormatControls.js在線

你可以改變這些300

removeformat: ['Clear formatting', 'RemoveFormat'], 
+0

嗨Chris, 我的tinymce目錄下沒有「/classes/ui/FormatControls.js」,但我在tinymce.js文件中找到了上面的removeformat行,並將「Clear formatting」更改爲「清除選定的格式'工作! 關於按鈕的操作,如果我選擇一個單詞並將顏色更改爲綠色,然後選擇所有文本的外部並選擇清除格式,則不會發生任何情況。但是,如果我選擇綠色字並選擇清除格式化,它會回到黑色。所以我沒有看到你描述的行爲,這就是爲什麼我的新工具提示在我看來更準確。 - 謝謝! – Steve

+0

看起來您使用的是過時的版本,或者代碼實現尚未完全正確。嘗試查看當前版本的tmce庫的版本。可能會有一些很大的差異,但看起來這是值得升級(個人oppinion)。 – Chris

0

一種方法是使用語言文件en_US並在那裏放置替代品。爲了使這項工作,你需要做兩件事情:

1 - 語言配置選項添加到您的init:

tinymce.init({ 
    selector: '#myTextArea', 
    language: 'en_US', //Force custom translations of button/menu text in English. 
    ... 
}); 

2 - 一個en_US.js文件添加到您langs文件夾TinyMCE中對於。
此文件是TinyMCE查找語言翻譯的地方,因此如果您明確告訴TinyMCE使用en_US語言,它將在langs文件夾中查找與該語言具有相同名稱的JS文件。然後,您可以把更新的翻譯在該文件中:

tinymce.addI18n('en_US',{ 
    "Clear formatting": "Custom Clear Formatting Text" 
}); 

要查看你可以改變只是從這裏抓取語言文件你的所有選項:https://www.tinymce.com/download/language-packages/左邊的標籤是「關鍵」和值正確的是「價值」。當您在tinymce.init({})調用中不包含對語言的引用時,「鍵」實際上是您獲得的英語。

這樣做的好處是您不會更改TinyMCE代碼本身,因此這會使更新TinyMCE更簡單,因爲您無需繼續重新創建您的更改。