TinyMCE4文檔目前很糟糕。我有一個與Ruby on Rails兼容的插件圖像插件,但它依賴於棄用的tiny_mce_popup.js。沒有關於如何更新插件來規避該文件的使用的信息。我應該如何使用tiny_mce_popup.js更新版本4來更新TinyMCE插件?
回答
TinyMCE 3依賴tiny_mce_popup.js來交換父對象和對話之間的變量。 TinyMCE 4不再使用dialog.htm和tiny_mce_popup.js
如果你看看image plugin,接着editor.windowManager.open
你可以看到對話是通過JS創建的。這消除了通過opener
高速訪問父變量的需要。如果可以的話,堅持使用這種模板方法。
我選擇堅持使用dialog.htm,但我從軌道服務,所以我不會處理與JS交換形式auth_token。如果你這樣做,請記住插入你的內容應該來自插件而不是來自你的對話。這是我簡單的圖片上傳:
tinymce.PluginManager.add('railsupload', function(editor, url) {
var win, data, dom = editor.dom
// Add a button that opens a window
editor.addButton('railsupload', {
icon: 'image',
tooltip: 'Insert image',
onclick: showDialog
});
function showDialog() {
win = editor.windowManager.open({
title: 'Insert image',
name: 'railsupload',
url: '/attachments/tinymce?owner_type=' + editor.settings.owner_type + '&owner_id=' + editor.settings.owner_id,
width: 200,
height: 220,
bodyType: 'tabpanel',
buttons: [{
text: 'Insert',
onclick: submitForm
}]
});
}
function submitForm() {
editor.insertContent("<img src=\"" + self.frames[1].document.img_url + "\" />")
win.close()
}
});
你需要一個軌附件控制器,你就需要通過URL來傳遞您的附件初始化參數。如果我在寶石中構建它,它將與tinymce-rails兼容,我將更新此答案。
更新:現在TinyMCE有從3.X遷移此頁:http://www.tinymce.com/wiki.php/Tutorial:Migration_guide_from_3.x
TinyMCE的4贊成新file_picker_callback
其優點在於它可以返回元數據的棄用老file_browser_callback
。
tinymce.init({
selector: 'textarea.tinymce',
file_picker_callback: function (callback, value, meta) {
myFilePicker(callback, value, meta);
},
plugins: ['link image'],
toolbar: 'undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image'
});
function myFilePicker(callback, value, meta) {
tinymce.activeEditor.windowManager.open({
title: 'File Manager',
url: '/Site/FileManager?type=' + meta.filetype,
width: 650,
height: 550,
}, {
oninsert: function (url) {
callback(url);
}
});
}
在你的文件瀏覽器將文件退給你打電話mySubmit('/images/file_123.jpg')
主頁當你點擊一個超鏈接或圖像。
function mySubmit(url) {
top.tinymce.activeEditor.windowManager.getParams().oninsert(url);
top.tinymce.activeEditor.windowManager.close();
}
的這將是很好的,如果你寫的與一些影像教程或詳細解釋。由於原始信息表單文檔太短。謝謝。 – Khamidulla
- 1. 我應該使用比默認更新的插件版本嗎?
- 2. 我應該更新Laravel版本嗎?
- 3. 使用版本插件更新新版本後的maven屬性
- 4. Maven安裝插件不使用版本插件更新版本
- 5. 使用作曲家將Laravel 4更新到更新的版本
- 6. 使用shell腳本來更新版本
- 7. 更新吉拉插件從版本3到版本4,更換SearchParameter
- 8. 我應該如何通過使用RxSwift來更新UITableViewCell?
- 9. 如何更新此版本以使用最新版本的bootstrap?
- 10. wordpress插件如何檢查新版本和更新
- 11. 如何使用更新版本的libc?
- 12. 如何使用版本Maven插件更新從屬同級模塊的版本
- 13. 如何更新Eclipse以使用更新版本的Java?
- 14. wordpress的更新插件版本
- 15. 如何更新fontawesome版本而不更新引導版本?
- 16. 如何更新PHP版本
- 17. 如何更新RPM版本?
- 18. 如何更新我的phonegap版本?
- 19. 即使有新版本,插件也不會提供更新
- 20. 我應該如何更新MySQLi表列?
- 21. 我應該如何更新REST資源?
- 22. 我該如何更新appcompat_v7?
- 23. 如何將tinyMCE升級到更新版本?
- 24. 如何使用補丁更新我的Drupal本地版本(BZR)
- 25. knockoutjs我應該更新
- 26. 如何更新文件的版本?
- 27. 如何更新datalab到新版本
- 28. 如何將cuDNN更新爲新版本?
- 29. 如何使用下載的更新文件更新當前的sts版本
- 30. 如何使用插件RowEditing更新值
保存自己的麻煩,等到TinyMCE的4失控測試 – Thariama