超漂亮的Bootstrap 富文本编辑器summernote

下面是这个Bootstrap富文本编辑器summernote的完整攻略。

介绍

Summernote是一款基于Bootstrap的富文本编辑器,功能强大、轻量级、简单易用,支持文本、图片等多种格式的编辑,同时也有插件系统可供扩展。它支持Markdown语法,可在WYSIWYG和编码之间自由切换,也支持响应式布局和多种主题样式。

下载和安装

下载summernote文件的最新版本,将其包括在HTML文件中

<head>  
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">  
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.12/summernote-bs4.css">  
    <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script>  
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>  
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>  
    <script src="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.12/summernote-bs4.js"></script>  
</head>
<body>  
    <textarea id="summernote"></textarea>  
    <script>  
        $(document).ready(function() {  
            $('#summernote').summernote();  
        });  
    </script>  
</body>  

常用功能

增加工具栏按钮

可以通过配置来增加工具栏按钮,例如,我们需要增加插入代码功能:

$('#summernote').summernote({  
  toolbar: [  
    ['style', ['style']],  
    ['font', ['bold', 'italic', 'underline', 'clear']],  
    ['fontname', ['fontname']],  
    ['color', ['color']],  
    ['para', ['ul', 'ol', 'paragraph']],  
    ['height', ['height']],  
    ['insert', ['picture', 'link', 'video', 'codeview']],  
    ['view', ['fullscreen', 'help']]  
  ],  
  onInit: function () {  
    $('.note-codeview').addClass('language-markup');  
  }  
});

插入图片

Summernote可以轻松地插入和上传图片。

$('#summernote').summernote({  
  height: 500,  
  tabsize: 2,  
  lang: 'zh-CN',  
  toolbar: [  
    ['style', ['style']],  
    ['font', ['bold', 'italic', 'underline', 'clear']],  
    ['fontname', ['fontname']],  
    ['fontsize', ['fontsize']],  
    ['color', ['color']],  
    ['para', ['ul', 'ol', 'paragraph']],  
    ['height', ['height']],  
    ['table', ['table']],  
    ['insert', ['link', 'picture']],  
    ['view', ['fullscreen', 'codeview', 'help']]  
  ],  
  callbacks: {  
    onImageUpload: function(files, editor, $editable) {  
      uploadImage(files[0], editor, $editable);  
    }  
  }  

});  

function uploadImage(file, editor, $editable) {  
  var url = URL.createObjectURL(file);  
  editor.insertImage($editable, url);  
}

上述代码会打开插入图片界面,可以选择本地的图片并上传,上传成功后可在编辑器中看到图片。

总结

在今天的攻略中,我们介绍了Summernote编辑器的基本用法,包括如何下载和安装,如何增加工具栏按钮,如何插入图片等。除此之外,Summernote还提供了更多的功能,如Markdown语法支持、响应式布局、多主题样式等。如果您对这个编辑器感兴趣,可以查看其官网详细了解。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:超漂亮的Bootstrap 富文本编辑器summernote - Python技术站

(0)
上一篇 2023年6月15日
下一篇 2023年6月15日

相关文章

  • Java中实现文件上传下载的三种解决方案(推荐)

    Java中实现文件上传下载的三种解决方案(推荐) 文件上传下载是web开发中常见的需求,Java作为流行的后端语言,有多种解决方案可以实现文件上传下载。本文将介绍三种推荐的方案,分别是: 1.基于Servlet API文件上传下载 2.使用Spring框架的文件上传下载 3.使用Apache Common FileUpload组件实现文件上传下载 第一种方案…

    Java 2023年5月20日
    00
  • jsp request.getParameter() 和request.getAttribute()方法区别详解

    JSP中的request对象是用于客户端到服务器的HTTP请求中传递参数、数据和请求头等信息的。request对象提供了多个方法来获取参数和属性值,其中包括getParameter()和getAttribute()方法。虽然这两个方法都能获取到客户端传输的参数或属性值,但是它们在具体的使用方式上是有所不同的。下面就来详细讲解一下它们的区别。 1. getPa…

    Java 2023年6月15日
    00
  • Java中IO流解析及代码实例

    Java中IO流解析及代码实例 什么是IO流? 在计算机的世界里,I/O就是指input/output,表示输入和输出,是计算机和外部世界交互的一种方式。 Java中IO流,就是指为了方便对这种输入输出进行操作而引入了一些类和接口,通常分为字节流和字符流两种类型。 字节流和字符流的区别在于数据的单位不同:字节流以字节为单位进行读写,可以用于读写所有类型的文件…

    Java 2023年5月23日
    00
  • Java中的单例模式详解(完整篇)

    Java中的单例模式是一种常见的设计模式,它用于确保类只有一个实例,并提供全局的访问点。在某些场景下,单例模式可以提高系统的性能和效率。下面是单例模式详解的完整攻略: 什么是单例模式 单例模式(Singleton Pattern)是一种常见的创建型设计模式,它可以确保一个类只有一个实例,并提供全局的访问点。单例模式可以避免不必要的对象创建,提高系统的性能和效…

    Java 2023年5月26日
    00
  • Sprint Boot @EnableConfigurationProperties使用方法详解

    Spring Boot的@EnableConfigurationProperties注解 在Spring Boot中,@EnableConfigurationProperties注解用于启用@ConfigurationProperties注解的类。使用@EnableConfigurationProperties注解可以将@ConfigurationPrope…

    Java 2023年5月5日
    00
  • Java监听器三种实现方法代码解析

    我来详细讲解一下“Java监听器三种实现方法代码解析”的完整攻略。 监听器概述 在编程的过程中,我们经常会需要监听某些事件的发生,比如按钮被点击、输入框发生改变等等,这时候我们可以使用监听器来捕获这些事件,并进行相应的操作。Java中,监听器是通过接口来定义的,我们可以实现这个接口,然后在需要监听这个事件的地方注册这个监听器即可。 监听器的实现方式 Java…

    Java 2023年5月18日
    00
  • 详解SpringMVC解决跨域的两种方案

    下面是详解”SpringMVC解决跨域的两种方案”的完整攻略。 一、什么是跨域 跨域是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是Web应用程序中常见的安全漏洞。 二、为什么需要解决跨域 因为现在Web开发中使用的是前后端分离,分别使用不同的域名访问,一般情况下都会涉及到跨域问题。 三、SpringMVC解决跨域的两种方案 1、使用@Cr…

    Java 2023年5月16日
    00
  • Erlang初学:Erlang的一些特点和个人理解总结

    Erlang初学:Erlang的一些特点和个人理解总结 概述 Erlang是一门函数式编程语言,适合用于分布式、并发和容错应用的开发。它最初由瑞典电信设备公司Ericsson开发,主要是为了在电话交换机系统中进行并发编程。 Erlang的设计目标是建立一种可容错、可扩展的系统,可以在大规模的、分布式的环境中运行。它的并发机制、错误处理和代码的热升级能力都是它…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部