3

CKEDITOR 4 のイベント ハンドラーを実装する方法について質問があることを認識しています。このコードを使用してキーダウン データを取得できますが、キーアップ後にデータを取得できないようです。

CKEDITOR.instances.editor.on('key', function (e){
    document.getElementById("preview").innerHTML = CKEDITOR.instances.editor.getData();
});

そのため、「aaa」などの文字列をテキスト エディタ フィールドに入力すると、最初の文字が取得されません。したがって、私の div id="preview" には "aa" のみが表示されます。非常に複雑な e オブジェクトを繰り返し処理しましたが、これを解決するのに役立つものは何もありません。

また、他の人がこれについて書いているのも見ません。CKEDITOR には "keyup" イベントはないようですが、よく書かれています。「keyup」は古いバージョンにあったに違いない?

私の問題を明確に述べていただければ幸いです。

4

5 に答える 5

7

これは機能します:

CKEDITOR.instances['editor'].on('contentDom', function() {
    CKEDITOR.instances['editor'].document.on('keyup', function(event) {
        document.getElementById("preview").innerHTML = CKEDITOR.instances.editor.getData();
    });
});

他の人が貢献したい場合に備えて、回答として確認する前に少し待ちます。

于 2013-05-23T12:18:28.180 に答える
1

私のための仕事

CKEDITOR.on('instanceCreated', function(e) {
    e.editor.on('contentDom', function() {
        var editable = e.editor.editable();
        editable.attachListener(editable, 'keyup', function() {
            var content = editable.getData()
            //your content               
        });
    });
}); 
于 2016-03-22T07:05:25.200 に答える