You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需重新初始化TinyMCE 6即可动态更换其CSS文件?

TinyMCE编辑器动态更换绑定CSS的解决方案

TinyMCE常用于CMS软件中,绑定到编辑器的CSS文件经常需要更换,操作时有两点核心注意事项:

  • 必须彻底卸载当前CSS文件,否则原有CSS规则仍会影响编辑器内容
  • 若仅修改CSS文件内容但不更改文件名,浏览器缓存会导致重新加载无效

可行解决方案

function reloadCSS()
{
  // 移除所有已加载的CSS文件
  tinymce.activeEditor.dom.styleSheetLoader.unloadAll(tinymce.activeEditor.contentCSS);
  
  // 清空存储CSS文件列表的变量
  tinymce.activeEditor.contentCSS = [];

  // 为CSS文件名添加时间戳,强制从服务器加载而非读取缓存
  let new_css = 'editor.css?t=' + Date.now();

  // 将新CSS文件添加到存储列表的变量中
  tinymce.activeEditor.contentCSS.push(new_css);
  
  // 加载新CSS文件到编辑器
  tinymce.activeEditor.dom.styleSheetLoader.load(new_css);
}

我最初尝试通过重新初始化编辑器来实现,但效果不理想。

内容的提问来源于stack exchange,提问作者Oleg Schildt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 07:02:01