1

我使用本指南将 tinyMCE 集成到 Active Admin textarea 元素中。

我做了:

下载最新版本的 tinyMCE (tinymce_3.5.6.zip) 并将 tiny_mce 文件夹放到我的 puplic/javascripts 文件夹中。

添加了 app/assets/javascripts/active_admin.js:

tinyMCE.init({
  mode : "textareas",
  theme : "advanced",
  theme_advanced_buttons1 : "bold, italic, underline, strikethrough, |, bullist, numlist, blockquote, |, undo, redo, |, link, unlink, code",
  theme_advanced_buttons2 : "",
  theme_advanced_buttons3 : "",
  theme_advanced_toolbar_location : "top",
  theme_advanced_toolbar_align : "center",
  theme_advanced_resizing : false
});

编辑 config/initializers/active_admin.rb:

#...
  config.register_javascript '/javascripts/tiny_mce/tiny_mce.js'
  config.register_javascript 'active_admin.js'
end

这导致在 chrome 中的活动管理员中没有集成 tinyMCE。Chrome 控制台的输出:

Uncaught ReferenceError: tinyMCE is not defined active_admin.js:1
  (anonymous function) active_admin.js:1
Load jQuery first! tiny_mce.js:1
Uncaught TypeError: Object #<Object> has no method 'extend' tiny_mce.js:1
c.create tiny_mce.js:1
  (anonymous function) tiny_mce.js:1
Uncaught TypeError: Object #<Object> has no method 'init' active_admin.js:1
  (anonymous function) active_admin.js:1

虽然 tinyMCE 在 Safari 和 SRWare Iron 中运行良好。但是 SRWare Iron 控制台在控制台输出中仍然存在一些错误:

active_admin.js:1Uncaught ReferenceError: tinyMCE is not defined
(anonymous function)active_admin.js:1

怎么修?

4

1 回答 1

1

我通过重命名解决了这个app/assets/javascripts/active_admin.js问题app/assets/javascripts/active_admin_custom.js

我之所以来到这里,是因为在生成的带有 textarea 的 html 页面中发现了两个带有active_admin.js名称的 javascript... 这似乎是冲突。

于 2012-09-15T15:59:53.170 回答