我正在尝试向Aloha内联编辑器UI工具栏添加一个按钮,以便在我的rails应用程序中使用。该代码用于普通html页面时效果很好。但是,在我的Rails应用程序中,即使我复制粘贴了它,也无法正常工作。该页面甚至没有显示任何错误。我的代码如下,其代码来自他们的网站,其中包括:

<script type="text/javascript">
Aloha.require(['ui/ui', 'ui/button'], function(Ui, Button) {
    var button = Ui.adopt("myButton", Button, {
        click: function(){
            alert("Click!");
        }
    });
});

Aloha.settings.toolbar = {
    tabs: [
     {
        label: 'Save',
        components: [ 'myButton' ]
     }
    ],
    exclude: [ 'strong', 'emphasis', 'strikethrough' ]
};

Aloha.ready( function() {
    var $ = Aloha.jQuery;
    $('.editable').aloha();
});
</script>

最佳答案

我同意!

 Aloha.settings.toolbar = {...};


应该在包含aloha.js之前。
但是,如果是这样,您将遇到一个问题,即您要使用Aloha时尚未对其进行定义。

所以我在演示中找到了解决方法。

(function(window, undefined) {

   if (window.Aloha === undefined || window.Aloha === null ) {
      var Aloha = window.Aloha = {};
   }

   Aloha.settings = {
      toolbar :{.....}
   };

})(window);


之后,包括aloha.js,设置应该生效。

10-07 21:41