1

2つの質問があります:

  1. 私はこのようなボタンを持っていることを試みています:

    buttons: buttons,
    buttonsCustom: {
      sh: {
        title: 'Syntax Highlighter', 
        callback: function(){
          var html = "<pre class='brush:'></pre>";
          this.execCommand('inserthtml', html);
        }
      }
    }
    

    ボタンが表示されますが、クリックすると、「this」には「execCommand」関数がないというメッセージが表示されます。それはどのように機能しますか?「これ」がRedactorであるとどうやって言うことができますか?私の言っていることが分かるよね ?

  2. ドロップダウンリストを作成することは可能ですか?

4

3 に答える 3

6

redactorのようなカスタムボタンを追加したかったのです。私はあなたのコードを受け取り、私の目的のためにコードを変更しました。それはあなたが見てみることができる私のために働きます:

$(document).ready(
    function()
    {
        $('.redactor').redactor({ 
            focus: true,
            buttonsAdd: ['|', 'token'], 
            buttonsCustom: {
                token: {
                    title: 'Ajouter une variable', 
                    dropdown: {
                        header: {title: 'Entête',callback: function(obj){obj.insertHtml('%header%');}},
                        footer: {title: 'Signature',callback: function(obj){obj.insertHtml('%footer%');}},
                        last_name: {title: 'Nom',callback: function(obj){obj.insertHtml('%last_name%');}},
                        first_name: {title: 'Prénom',callback: function(obj){obj.insertHtml('%first_name%');}},
                        date: {title: 'Date',callback: function(obj){obj.insertHtml('%date%');}},
                        contract: {title: 'Contrat',callback: function(obj){obj.insertHtml('%contract%');}}
                    }
                } 
            }
        }); 
    }
);

乾杯

于 2012-12-13T17:00:39.577 に答える
1

私は自分でそれを修正しました:

callback: function(obj){
  var html = "<pre class='brush:'></pre>";
  obj.execCommand('inserthtml', html);
}
于 2012-11-23T16:51:58.270 に答える
0

redactorソース(最新バージョン8.2.6)を見ると、プラグインAPIのaddBtn関数に4番目のパラメーターを渡して、ドロップダウンを記述できることに気付きました。したがって、プラグイン内から[フォントサイズ]ドロップダウンメニューを追加するとします。

RedactorPlugins.fontSize = {

    init: function(obj) {

        btnCallback = function(obj,event,key) {
            // button actions, if any
        }

        dropdown = {
            small: {
                title: 'Small'
                callback: function(obj,event,key) { //set the font size to small }
            }
            medium: {
                title: 'Medium'
                callback: function(obj,event,key) { //set the font size to medium }
            }
        }

        this.addBtn('fontSize','Change font size', btnCallback, dropdown);
    }

}
于 2013-04-15T18:30:12.470 に答える