关于如何让CKEditor将href="javascript:void(0)"
保存在我放置在我的小部件模板中的链接中,我找不到一个干净的解决方案。保存后,通过调用CKEDITOR.instances.*.getData()
,它会返回href="javascript void(0)"
。
我已尝试设置config.allowedContent = true;
&在config.js中config.linkJavaScriptLinksAllowed = true;
,但他们似乎都没有做任何事......
我已阅读this page,其中表明应该修复此问题,但这不起作用。有什么想法吗?
下面简化的plugin.js部分很有意思。这允许链接中包含href
属性,但它仍会删除:
。
template:
'<div class="container">' +
'<a href="javascript:void(0)">' +
'<span class="label">Label</span>' +
'</a>' +
'</div>',
allowedContent:
'a[href]; div(*); span(*);',
editables: {
Label: {
selector: '.label',
allowedContent: ''
}
}
CKEditor版本:4.5.9 浏览器:Chrome
答案 0 :(得分:1)
您在更改日志中找到的bug fix仅针对“链接”对话框实现,因此仅在通过插件对话框插入链接时才有效。
据我了解,您的情况有所不同,因为您使用href="javascript:void(0)
的链接作为小部件模板的一部分。不完全确定您的模板结构是什么以及您是如何创建窗口小部件的,但在创建它时,您可以使用editables
属性来定义窗口小部件的可编辑部分内允许的元素:
editables: {
content: {
selector: '.widget-content',
allowedContent: 'p a[href]'
}
}
因此,使用allowedContent
您可以为窗口小部件的这一部分定义允许的内容 - 在这种情况下,p
标记和a
标记具有href
属性。使用此类配置时,应正确插入<a href="javascript:void(0)">Link</a>
。
您可以详细了解允许的内容规则in the documentation。