2

こんにちは、私は NicEditor を使用しています。フォント サイズを異なる方法で動作させたいと考えています。現在、エディターは次のものを使用しています。

<font size='1...7'>the selected text here</font>

span タグになりたくない

<span style='font-size:30px'>the selected text here</span>

ドロップダウンのコードは次のとおりです。

var nicEditorFontSizeSelect = nicEditorSelect.extend({
    sel : {1 : '1&nbsp;(8pt)', 2 : '2&nbsp;(10pt)', 3 : '3&nbsp;(12pt)', 4 : '4&nbsp;(14pt)', 5 : '5&nbsp;(18pt)', 6 : '6&nbsp;(24pt)', 7 : '7&nbsp;(36pt)', 8 : '8&nbsp;(48pt)', 9 : '9&nbsp;(72pt)', 10 : '10&nbsp;90pt)', 11 : '11&nbsp;(100pt)'},
    init : function() {
        this.setDisplay('Font&nbsp;Size...');
        for(itm in this.sel) {
            this.add(itm,'<font size="'+itm+'">'+this.sel[itm]+'</font>');
        }       
    }
});

fontしかし、テキストエリア内のspanタグに置き換えるように変更するコードが見つかりません。

どんな提案でも大歓迎です。

ありがとうございました

4

1 に答える 1

4

これは古い質問ですが、他の誰かがここで答えを必要とする場合は、それがあります。

これは非常に基本的なことであり、たとえばネストされたを作成するなど、改善することで実行できることに注意してください。

とにかく、nicEditorを初期化する前に、このJSコードを追加し、カスタムプラグインを作成します。

var nicSelectOptionsCustomFormat = {
    buttons : {
        'fontCustomSize' : {name : __('Font size'), type : 'nicEditorCustomFormatSelect'}
    }
};
var nicEditorCustomFormatSelect = nicEditorSelect.extend({
    sel : {'11px' : '11px', '13px' : '13px', '15px' : '15px', '19px' : '19px', '22px' : '22px'},

    init : function() {
        this.setDisplay('Font size');
        for(itm in this.sel) {
            this.add(itm,'<span style="size:'+itm+'">'+this.sel[itm]+'</span>');
        }
    }

    ,update : function(elm) {
        var newNode = document.createElement('span');
        newNode.style.fontSize = elm;
        var rng = this.ne.selectedInstance.getRng().surroundContents(newNode);
        this.close();
    }
});
nicEditors.registerPlugin(nicPlugin,nicSelectOptionsCustomFormat);

次にfontCustomSize、エディタを作成するときに使用します。例:

var config = {
    buttonList: ["bold", "italic", "underline","fontCustomSize"]
};
var e = new nicEditor(config);
e.panelInstance("page-description");
于 2012-07-18T23:52:13.790 に答える