Summernote airmode:单击时触发airmode,而不是选择

Summernote airmode:单击时触发airmode,而不是选择

问题描述:

我使用summernote airmode创建内联编辑器,但是当用户选择/突出显示文本时,它当前仅显示编辑器(请参阅pict)。我想要的是在焦点/点击文本(不选择它)时触发airmode编辑器。我不知道该怎么做,请帮忙。Summernote airmode:单击时触发airmode,而不是选择

这是我目前summernote airmode:here

HTML

<div id="test"> 
    <h1>Hello, I'm calvanery</h1> 
    <h4>Select me</h4> 
</div> 

的Javascript

<script> 
    $('#test').summernote({ 
    airMode: true, 
    callbacks: { 
      onFocus: function() { 
      console.log('Editable area is focused'); 

      } 
     } 
    }); 
</script> 

editor shows when user select/highlight text

提前

感谢210

试试这个,

添加的onfocus在Summernote选项:

callbacks: { 
    onFocus: function() { 
     $(this).next().find(".note-editable").selectText(); 
    } 
} 

jQuery的selectText插件:

jQuery.fn.selectText = function() { 
    var doc = document; 
    var element = this[0]; 
    if (doc.body.createTextRange) { 
     var range = document.body.createTextRange(); 
     range.moveToElementText(element); 
     range.select(); 
    } 
    else if (window.getSelection) { 
     var selection = window.getSelection(); 
     var range = document.createRange(); 
     range.selectNodeContents(element); 
     selection.removeAllRanges(); 
     selection.addRange(range); 
    } 
}; 

这将选择在点击的文本,它会打开popover。

+1

我试过这个,在我问这里问题之前,从summerntoe github问题的谷歌上找到它,而我不想要它。 –