2012-12-31 50 views
3

是否有任何方法通过直接使用在插件中创建的相同命令来更改连接到TinyMCE工具栏的textarea的方向性?我的意思是,我想以编程方式运行RTL方向性,而无需实际点击工具栏的图标。模拟TinyMCE RTL按钮在实例化工具栏后点击

directionality插件的源代码,将以下代码包含:

 ed.addCommand('mceDirectionRTL', function() { 
      setDir("rtl"); 
     }); 

这意味着mceDirectionRTL是一个命令。我可以直接在代码中使用它吗?我尝试过,但没有得到承认。

的原因,我问的是,我想后TinyMCE的实例启动时,而不是在TinyMCE的工具栏的初始化/设置功能运行此命令。我有一堆texraeas,有些是英文的,有些有类ar来表示他们是用于阿拉伯语,这是RTL。

但是,当我这样做:(!整个工具栏) $('ID of my textarea'_ifr').contents().find('body').attr('dir', 'rtl');

那么一切都只是mceExternalToolbar罚款不只是文本区域,成为RTL。所以外部工具栏基本上不合适,并偏向页面的右侧。但我只想要它连接的textarea具有RTL文本,而不是整个工具栏!

所以我想追工具栏被实例化以某种方式从外部模拟点击工具栏上的按钮RTL。这可能吗?

回答

1

如果“安装”方向性插件,你可以做这样的事情。您还需要参考tinyMCE。

function(directionality){ 
    var command = directionality == 'ltr' ? 'mceDirectionLTR' : 'mceDirectionRTL' 
    for(var i = 0; i++; i<tinyMCE.editors.length;{ 
    tinyMCE.editors[i].execCommand(command) 
    } 
} 

我有我的网站上两名编辑。这似乎为我完成了这项工作。