tinyMCE 第四章 (工具栏模式)

现代网页设计中对响应式布局的需求不断增加,尤其是在文本编辑器这样的交互密集型组件上,适应不同屏幕尺寸和用户操作习惯成为了开发者必须解决的问题。TinyMCE是一个广泛使用的Web富文本编辑器,它提供了多种工具栏模式以适配各种编辑场景。这篇文章将会深入讲解TinyMCE中toolbar_mode的配置选项,以及如何正确设置其它工具栏相关选项。

工具栏模式(toolbar_mode

当编辑器的宽度不足以显示所有工具栏按钮时,toolbar_mode配置项可以帮助我们管理和展示工具栏按钮。主要有四种模式:"floating"(浮动)、"sliding"(滑动)、"scrolling"(滚动)和"wrap"(换行)。每种模式在不同情景下都有其特定用途和优势。

浮动(floating

当你将toolbar_mode设置为浮动模式,同时编辑器宽度不足以容纳所有工具栏组时,多余的按钮会被移动到工具栏抽屉中。以下是一个浮动模式的配置实例:

javascript 复制代码
tinymce.init({
  selector: 'textarea',
  toolbar_mode: 'floating'
});

在这种模式下,被隐藏的按钮会在点击抽屉图标时以浮动架的形式出现。

滑动(sliding

滑动模式会将多出的工具栏按钮固定在编辑器第一个工具栏下方,当你点击工具栏抽屉图标时它们会显示出来:

javascript 复制代码
tinymce.init({
  selector: 'textarea',
  toolbar_mode: 'sliding'
});

滚动(scrolling

为触摸屏设备设计的滚动模式会保留工具栏上的按钮,但是超出部分将被隐藏起来。用户可以通过滚动工具栏来访问这些按钮,不过需要注意的是,这种模式也会在桌面设备上显示滚动条。

javascript 复制代码
tinymce.init({
  selector: 'textarea',
  toolbar_mode: 'scrolling'
});

换行(wrap

在换行模式下,多出的按钮将被放置在主工具栏下方的一个或多个额外工具栏上:

javascript 复制代码
tinymce.init({
  selector: 'textarea',
  toolbar_mode: 'wrap'
});

工具栏位置(toolbar_location

此选项用于设置工具栏及菜单栏的位置。默认情况下,它们位于内容区域的上方,但将此选项设置为bottom可以将它们移至内容区域的下方:

javascript 复制代码
tinymce.init({
  selector: 'textarea',
  toolbar_location: 'bottom'
});

粘性工具栏(toolbar_sticky)

开启粘性工具栏功能后,当用户下滑网页时,工具栏会固定在屏幕顶部,直到编辑器不再可见。

javascript 复制代码
tinymce.init({
  selector: 'textarea',
  toolbar_sticky: true
});

粘性工具栏偏移(toolbar_sticky_offset

当你的网站有固定在顶部的导航栏时,toolbar_sticky_offset可以帮助你设置工具栏与视口顶部或底部的偏移量(取决于toolbar_location的设置),允许TinyMCE工具栏在导航栏下方"dock":

javascript 复制代码
tinymce.init({
  selector: 'textarea',
  toolbar_sticky: true,
  toolbar_sticky_offset: 100
});
相关推荐
hello93073 小时前
plop代码生成器
前端
windliang3 小时前
Claude Code 源码分析(十二):错误处理与自动恢复:让 Agent 稳定运行
前端·javascript·面试
fatcoder3 小时前
玩转Docker 06 — 容器网络
前端·后端·docker
打呵欠的猫3 小时前
我用 AI 重写了项目的请求层,从 800 行"面条代码"变成 3 层洋葱模型
前端·ai编程
默_笙3 小时前
🛬 前端路由的"高级玩法":懒加载、404、鉴权路由,一个都不能少(下篇)
前端·javascript
用户921080262863 小时前
1. Cesium 在 Vue 项目中的简单初始化配置
前端
YIAN3 小时前
从 Hash 底层原理到 React Router v6 实战:我学会了什么?
前端·react.js·vue-router
lv__pf4 小时前
Spring配置类解析 【TL spring 11】
java·前端·spring
AI分享猿4 小时前
UI设计Prompt系列(十三):响应式布局需求怎么写——让设计Prompt更接近前端实现
前端
ClouGence4 小时前
Selenium 写不动了?这个工具录一次就能跑 Web 自动化
前端·selenium·测试