1

私の TinyMCE ツールバーにはたくさんのカスタム ボタンがあります。そのほとんどは、クリックするといくつかの追加オプションを含むダイアログ ボックスが開きます。これはすべてうまくいきます。これは私の tinyMCE_setup() 関数の例です:

ed.addButton('link2', {
    title: '{!link!}',
    image: '../style/common/images/link_20x20.png',
    onclick: function() {
        replyBoxDialog('link', ed);
    }
});

ただし、これらをプログラムで呼び出すことができるようにしたいのですが、jQuery を使用してボタンの .click() を偽造してもうまくいきません。関数を直接呼び出してみました

replyBoxDialog('link',tinyMCE);

しかし、2 番目の引数として何を試しても、正しいオブジェクトを取得できません (そのため、エディターが何であるかがわからないため、エディターに何かを挿入するときに失敗します)。

また、さまざまな execCommand() 呼び出しを試してみましたが、そこに何を入れればよいかわかりません。

手がかりはありますか?

4

2 に答える 2

2

実際のエディター オブジェクトをパラメーターとして使用するだけです。

var editor_instance = tinymce.activeEditor; // in case you just use one editor
var editor_instance = tinymce.get('my_special_editor_id'); // in case you have more than one editor

replyBoxDialog('link', editor_instance);
于 2012-04-26T07:32:23.723 に答える
1

スクリプトの先頭に変数 'globalEd' を作成し、 に追加することで機能させることがglobalEd = ed;できたtinyMCE_setup()ので、 を呼び出すことができますreplyBoxDialog('dragndrop', globalEd);。ただし、これは適切にハックな方法のように思えるので、さらにアドバイスをいただければ幸いです。

于 2012-04-25T16:24:34.173 に答える