CKEditor样式表解析器
我正在使用CKEditor 4.4.5及其插件样式表解析器4.4,但从样式下拉列表中得到的是空列表 为了使我的问题更容易理解,请尝试以下代码(从其示例站点下载:):CKEditor样式表解析器,ckeditor,ckeditor4.x,Ckeditor,Ckeditor4.x,我正在使用CKEditor 4.4.5及其插件样式表解析器4.4,但从样式下拉列表中得到的是空列表 为了使我的问题更容易理解,请尝试以下代码(从其示例站点下载:): 样式表解析器插件 p这是一些strong示例文本/strong。您正在使用a href=”http://ckeditor.com/“编辑/a./p CKEDITOR.replace('editor2'{ extraPlugins:'stylesheetparser', 身高:300, //编辑器内容的自定义样式表。 content
样式表解析器插件
p这是一些strong示例文本/strong。您正在使用a href=”http://ckeditor.com/“编辑/a./p
CKEDITOR.replace('editor2'{
extraPlugins:'stylesheetparser',
身高:300,
//编辑器内容的自定义样式表。
contentsCss:['http://sdk.ckeditor.com/samples/assets/stylesheetparser/stylesheetparser.css' ],
//不要加载默认样式配置。
样式集:[]
} );
这真的不管用。但该网站上的样本效果良好。
我还发现了另一个示例站点:
我试图从这个演示站点复制所有源代码,但没有成功
其他人也有同样的问题吗?
我如何才能使上述代码正常工作?它基本上使用CDN站点的源代码,因此我认为源代码的版本无关紧要。您应该尝试使用此版本:
官方插件很久以前就出现了一些问题,但他们似乎没有计划解决这些问题。这个问题是由跨域请求引起的。CSS文件位于HTTP服务器中,我的应用程序正在使用端口号运行。因此,它们被视为跨域请求 我还测试了本地文件中的HTML页面和CSS文件。然而,file://...path 在Chrome中仍然被视为跨域请求,但FF和IE可以正确地处理这一点
当我在服务器上尝试这一点时,它可以与Chrome一起正常工作。不幸的是,在Chrome和Firefox中似乎无法实现跨域请求。跨域请求?您正在从cdn.ckeditor.com提取.js代码,但试图从sdk.ckeditor.com加载css。在任何情况下,检查JS请求是否存在错误/警告。控制台中没有错误。从sdk.ckeditor.com加载css很好,因为我认为站点所有者将其设置为允许跨域请求。此外,我还尝试使用我的本地CSS文件。相同的结果:空列表。但您是否使用跨域样式表进行测试?我不认为这会起作用,我只是建议使用这个插件,因为在正常设置中,当缓存和加载样式表的时间出现问题时,它会有所帮助。我认为我发现了问题。我现在使用了一个本地css文件。它在IE和FireFox中运行良好,但在Chrome中不起作用。问题是在函数LoadStylesCSS中(DOC、skipSelectors、validSelectors)。Chrome中的doc.styleSheets[i].cssRules始终为空。你在Chrome上也有同样的问题吗@阿方索姆诺,我对Chrome没有任何问题。也许是因为你安装了一些扩展?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="robots" content="noindex, nofollow">
<title>Stylesheet Parser plugin</title>
<script src="http://cdn.ckeditor.com/4.5.2/standard-all/ckeditor.js"></script>
</head>
<body>
<textarea cols="80" id="editor2" name="editor2" rows="10" ><p>This is some <strong>sample text</strong>. You are using <a href="http://ckeditor.com/">CKEditor</a>.</p>
</textarea>
<script>
CKEDITOR.replace( 'editor2', {
extraPlugins: 'stylesheetparser',
height: 300,
// Custom stylesheet for editor content.
contentsCss: [ 'http://sdk.ckeditor.com/samples/assets/stylesheetparser/stylesheetparser.css' ],
// Do not load the default Styles configuration.
stylesSet: []
} );
</script>
</body>
</html>