tinyMCE点击外面,textarea隐藏

时间:2012-08-22 10:04:47

标签: javascript jquery tinymce textarea

我在一个名为text_editor的div中有一个tinyMCE textarea。 所以我有我的jQuery:

$('#text_editor').hover(function(){ 
           mouse_is_inside=true; 
   }, function(){ 
           mouse_is_inside=false; 
   });

$('body').mouseup(function(){
    if(! mouse_is_inside){
            $('#text_editor').hide();

    }
});

当用户在div文本编辑器外部单击时,这将隐藏,但如果用户选择字体系列或字体大小,则文本编辑器隐藏,所以我在我的jQuery中添加它:

$(document).on('click', '.mceMenuItem, .mceColorSplitMenu, .mceBottom, .mceMoreColors', function(e){
       e.stopPropagation(); 
       $('#text_editor').show();
    });

这解决了问题开销。但如果用户点击颜色选择器 - 更多颜色,打开一个新窗口,并且text_editor隐藏,我不希望这样。

1 个答案:

答案 0 :(得分:1)

demo

var $editor = $('#text_editor');

$('textarea').click(function(e){
  e.stopPropagation();
  $editor.fadeTo(400,1);
});


$('body').on('click', function ( e ) {
  if( !($(e.target).is('#text_editor')) && $editor.is(':visible') ){
    $editor.hide();
  }
});