2012-11-12 45 views
6

tinyMCE的是添加那些move and resize handles我的一些元素(不只是圖像)。tinyMCE的刪除/禁用調整大小切換

我很想擺脫他們所有的一起,但我沒有成功。

這些並沒有爲我工作

tinyMCE.init({ 

    object_resizing : false 

}); 

似乎應該是真正的輕鬆。

OK,所以它看起來是增加了調整大小JS到絕對定位的元素。如果這有助於任何人的答案。

我只是想刪除它,但我需要將它定位做什麼,我需要的。

在編輯器中的body標籤

回答

3

是一個屬性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); 

})(); 
+0

原來如此!非常感謝!!!! – 100pwd

+0

現在它是['調整:FALSE'](https://www.tinymce.com/docs/configure/editor-appearance/#resize)。 – Tiny

4

卸下jQuery和製作cheez拉weez的回答工作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); 
     } 
}); 

唯一遺憾的一點是,你的用戶將不得不重新點擊編輯恢復編輯(箭頭鍵將無法正常工作)

+0

作品!! 11加1 – Thariama