7

tinyMCEはそれらmove and resize handlesを私の要素のいくつか(画像だけでなく)に追加しています。

私はそれらをすべて一緒に取り除きたいのですが、私は成功していません。

これらは私にはうまくいきませんでした

tinyMCE.init({

   object_resizing : false

});

本当に簡単なはずです。

OK、絶対に配置されている要素にサイズ変更jsを追加しているようです。それが答えを持っている人を助けるなら。

削除しようとしましたが、必要なことを行うために配置する必要があります。

4

2 に答える 2

4

jQueryを削除し、Cheez laweezの回答をTinyMCEバージョン4で機能させる

// var editor = your tinyMCE editor instance (e.g. tinymce.activeEditor)

editor.on('mousedown', function(e) {

        var element = e.target,
            body = editor.dom.doc.body;

        if (editor.dom.hasClass( element, 'your-class')) {
            editor.dom.setAttrib(body,'contenteditable',false);
        } else {
            editor.dom.setAttrib(body,'contenteditable',true);
        }
});

唯一の不幸な点は、ユーザーが編集を再開するためにエディターに戻ってクリックする必要があることです(矢印キーは機能しません)

于 2014-03-21T19:30:10.957 に答える
3

エディターのbodyタグには属性がありますcontenteditable="true"。それがそれらの厄介なサイズ変更要素を追加しているものです。

その属性を設定すると、false何も編集できなくなります。

onMouseDownあなたがする必要があるのはリスナーを設定することです。ユーザーが問題の要素をクリックしている場合は...に設定しcontenteditable="false"ます。他の要素がある場合は、に設定しcontenteditable="true"ます。

これを試して...

(function() {  

    tinymce.create('tinymce.plugins.yourplugin', {  

        init : function(ed, url) { 

            ed.onMouseDown.add(function(ed, e) {    

                var body = ed.getBody();

                if(jQuery(e.target).hasClass('target-in-question')) {

                    jQuery(body).attr({'contenteditable': false})

                    // and whatever else you want to do when clicking on that element

                }else {
                    jQuery(body).attr({'contenteditable': true})
                }

            }); 

        },  

        createControl : function(n, cm) {  

            return null;  

        },  

    });  

    tinymce.PluginManager.add('yourplugin', tinymce.plugins.yourpluginl);  

})();
于 2012-11-13T01:34:19.880 に答える