问题 #2814💬 已回答提出于 2020年6月5日作者 RJCAM2 个反应

自定义面板按钮,可以动态启用/禁用用户脚本

快速解答作者 artf1

你可以这样更改:'editor.getConfig().allowScripts = ...'

阅读下方完整回答 ↓

问题

你好,感谢你分享这么好的项目。 我正在尝试在编辑器中自定义一些内容,但有些问题如果能澄清,我会很感激。 最近我创建了一个面板按钮,用来切换编辑器在绝对和默认模式之间切换,完全没问题。 但当我尝试用同样的方法(实际上是同一个代码)来创建另一个面板按钮,允许用户在编辑器中启用/禁用脚本(allowScripts:0或1)时, 我确实看到这是通过“editor.getModel().attributes.allowScripts”函数更改值,但实际上并没有起作用。 当按钮被点击且“允许脚本”按钮激活时,我们应该会看到警报。 但只有在我们用'...allowScripts: 1...' 我们能看到警报,但用自定义面板按钮无法关闭它。 我是不是漏掉了什么? 这里有一个Codepen问题的演示: https://codepen.io/RJCAM/pen/xxZbNLw 顺便说一句: 这段代码只是测试,做完后我真正想要的是只允许用户脚本在预览模式下使用,而不允许在编辑器模式下使用。

回答(3)

artf2020年6月17日

你可以这样更改:'editor.getConfig().allowScripts = ...'

artf2020年6月17日

AllowScripts 是用来支持解析 JS,一旦插入脚本就会被执行,所以你无法移除它(一种方法是访问 iframe 的上下文并手动更改)。

RJCAM2020年6月17日

感谢你的回复@artf。问题是,你给我的代码会改变数值,但仍然无法如我上面描述的那样工作。 在我分享的演示中,[(https://codepen.io/RJCAM/pen/xxZbNLw)](URL)有一个按钮,点击后会显示警报。 预期行为: 当按钮禁用允许脚本时 ![图片](https://user-images.githubusercontent.com/49693237/84889577-3afa3500-b080-11ea-9f8e-fee7ee2b6465.png)——> this button 编辑器初始配置会将allowScripts改为0 而且当点击Canvas内的按钮时,它...

相关问答

通过相似的问题讨论继续研究。

问题 #2852

:无法同时启用两个面板按钮

你好,我正在尝试同时启用多个自定义面板按钮。我觉得当我用下面的代码创建自定义面板按钮时,它们的行为会和普通的 HTML 无线电输入一样,意味着你只能选择一个,不能选择更多。请看下面的示例,当我尝试启用两个按钮,但一个按钮会禁用另一个时: ![面板按钮](https://user...

2 个回答更新于 2020年6月24日

问题 #2207

:如果在顶部/左侧有空位,Mode Absolute 无法拖动组件

给定以下代码示例...... “'' HTML <div style=“height: 100px;”> 顶部或左侧有空隙 </div> <div id=“gjs”> <p style=“填充:25px”> 赫斯德洛世界!!</p> </div> 导致无法通过面板上的拖曳图标拖...

3 个回答更新于 2020年1月2日

问题 #384

创建并编辑模板到数据库中

这是我创建新模板并将带有样式的内联HTML插入数据库的代码: “''js VAR Editor = Grapesjs.init ({ 身高:“100%”, 容器:“#gjs”, 插件:['GJS-preset-newsletter'], storageManager: { id...

3 个回答更新于 2019年9月18日

问题 #839

创建自定义选定的组件设置

面板中有更改组件设置的选项(链接有“不更改链接”- HREF - 和目标,文本、ID和标题,图片有alt属性)。我想知道如何创建那个输入,以及如何在所选组件中更改这个 attrs?我创建了一个面板视图作为CKEditor,在选择时更改文本组件,我希望这些水獭设置能保持在同一视图...

3 个回答更新于 2019年9月18日

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

浏览插件分类

直接跳转到市场上的插件分类页面。