• 基于bootstrsp的jquery富文本编辑器的手冊说明


    重点:当在页面插入文本编辑器后。无法用js/jq的方式去将某些值写入到文本编辑器。如:$("textarea").val("111");$("textarea").text("111");。。。

    Summernote提供了指定的方式:$("textarea").Summernote().code('111');这是赋值。取值也可这样:$("textarea").Summernote().code();

    Summernote是一个基于jquery的bootstrap超级简单WYSIWYG在线编辑器。Summernote很的轻量级。大小仅仅有30KB,支持Safari,Chrome,Firefox、Opera、Internet Explorer 9 +(IE8支持即将到来)。

    特点:

    世界上最好的WYSIWYG在线编辑器

    极易安装

    开源

    自己定义初化选项

    支持快捷键

    适用于各种后端程序言语

    用法

    使用html5文档

    1
    2
    3
    4
    <!DOCTYPE html>
    <html>
    ...
    </html>

    引入核心文件。Summernote须要几个JS库的支持,所以得先引入其他库

    1
    2
    3
    4
    5
    6
    7
    8
    9
    <!-- include libries(jQuery, bootstrap, fontawesome) -->
    <script src="//code.jquery.com/jquery-1.9.1.min.js"></script>
    <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.1/css/bootstrap.min.css">
    <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.1/js/bootstrap.min.js"></script>
    <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css">
     
    <!-- include summernote css/js-->
    <link href="summernote.css" />
    <script src="summernote.min.js"></script>

    写入html,仅仅需增加一个DIV元素。写上ID

    1
    <div id="summernote">Hello Summernote</div>

    写入JS初始化插件

    1
    2
    3
    $(document).ready(function() {
            $('#summernote').summernote();
        });

    API

    初始化Summernote

    1
    $('.summernote').summernote();

    使用參数初始化

    设定高度与焦点

    1
    2
    3
    4
    5
    6
    7
    $('.summernote').summernote({
      height: 300,                 // set editor height
     
      minHeight: null,             // set minimum height of editor
      maxHeight: null,             // set maximum height of editor
     
      focus: true,                 // set focus to editable area after initializing summernote});

    设定高度后,假设内容高度超过设定高度将出现滚动栏,假设没有设定高度则一直往下挣开。设定focus为true时,打开页面后焦点定位到编辑器中。

    自己定义工具栏

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $('.summernote').summernote({
      toolbar: [
        //[groupname, [button list]]
          
        ['style', ['bold''italic''underline''clear']],
        ['font', ['strikethrough']],
        ['fontsize', ['fontsize']],
        ['color', ['color']],
        ['para', ['ul''ol''paragraph']],
        ['height', ['height']],
      ]
    });

    预设參数

    类型 buttonid 方法
    Insert picture Insert a picture
    link Insert a hyperlink
    video Insert a video
    table Insert a table
    hr Insert a horizontal rule
    Style style Format selected block
    fontname Set font family
    fontsize Set font size
    color Set foreground and background color
    bold Toggle weight
    italic Toggle italic
    underline Toggle underline
    strikethrough Toggle strikethrough
    clear Clearing all styles
    Layout ul Make an un-ordered list
    ol Make an ordered list
    paragraph Set text alignment
    height Set height of text
    Misc fullscreen Toggle fullscreen editing mode
    codeview Toggle wysiwyg and html editing mode
    undo Undo
    redo Redo
    help Show help dialog

    极简模式Air-mode

    1
    2
    3
    4
    5
    6
    7
    8
    9
    $('.summernote').summernote({
      airPopover: [
        ['color', ['color']],
        ['font', ['bold''underline''clear']],
        ['para', ['ul''paragraph']],
        ['table', ['table']],
        ['insert', ['link''picture']]
      ]
    });

    释放Summernote

    1
    $('.summernote').destroy();

    取值与赋值

    1
    2
    3
    4
    5
    6
    //取值
    var sHTML = $('.summernote').code();
    //同一页面多个summernote时,取第二个的值
    var sHTML = $('.summernote').eq(1).code();
    //赋值
    $('.summernote').code(sHTML);

    事件

    oninit

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      oninit: function() {
        console.log('Summernote is launched');
      }
    });

    onenter

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      onenter: function(e) {
        console.log('Enter/Return key pressed');
      }
    });

    onfocus

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      onfocus: function(e) {
        console.log('Editable area is focused');
      }
    });

    onblur

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      onblur: function(e) {
        console.log('Editable area loses focus');
      }
    });

    onkeyup

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      onkeyup: function(e) {
        console.log('Key is released:', e.keyCode);
      }
    });

    onkeydown

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      onkeydown: function(e) {
        console.log('Key is pressed:', e.keyCode);
      }
    });

    onpaste

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      onpaste: function(e) {
        console.log('Called event paste');
      }
    });

    onImageUpload

    能够重写图片上传句柄

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      onImageUpload: function(files, editor, $editable) {
        console.log('image upload:', files, editor, $editable);
      }
    });

    onChange

    IE9-10: DOMCharacterDataModified, DOMSubtreeModified, DOMNodeInserted

    Chrome, FF: input

    1
    2
    3
    4
    5
    $('#summernote').summernote({
      onChange: function(contents, $editable) {
        console.log('onChange:', contents, $editable);
      }
    });

    支持18国语言。使用时引入你须要的语言文件,lang值设为你须要的语言

    1
    2
    3
    4
    5
    6
    7
    8
    <!-- include summernote-ko-KR -->
    <script src="lang/summernote-ko-KR.js"></script>
     
    $(document).ready(function() {
      $('#summernote').summernote({
        lang: 'ko-KR' // default: 'en-US'
      });
    });
  • 相关阅读:
    JS—ajax及async和defer的区别
    js-cookie和session
    h5小功能_classList和自定义属性data
    html5-attr和prop
    人工智能与金融
    IBM的人工智能“沃森”首次确诊罕见白血病,只用了10分钟!
    终极复制 人工智能将如何推动社会巨变
    对人工智能问题的提问
    人工智能预测精神病
    人工智能代替工人
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/6776891.html
Copyright © 2020-2023  润新知