我使用的是内联ckeditor 4.0.2版本,并试图使用flash插件嵌入一个flash对象(ooyala视频)。添加url后,我看到的是一张图片"Flash",而不是视频。此外,在保存代码后,我仍然看到相同的图像,而不是视频。
这是那个闪光图像的代码
<img class="cke_flash" data-cke-realelement="the real element code" data-cke-real-node-type="1" alt="Flash Animation" title="Flash Animation" align="absMiddle" src="http://localhost:3000/javascripts/lib/ckeditor_4.0.2/plugins/fakeobjects/images/spacer.gif?t=D26D" data-cke-real-element-type="flash" data-cke-resizable="true">
我如何才能看到实际的视频而不是此图像?
您不能故意在编辑器中看到flash视频。它被伪图像所取代,以保护编辑器的内容,并确保与嵌入对象的单击(或其他交互)不会破坏编辑器。Flash可以全屏显示,加载大量数据,发出噪音或其他任何在编辑器中工作时不需要的东西。
一旦你从编辑器中获得数据,你的flash就会被转换为所需的标记,即:
<p>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0">
<param name="quality" value="high" />
<param name="movie" value="someFlashToBeLoaded.swf" />
<embed pluginspage="http://www.macromedia.com/go/getflashplayer" quality="high" src="qwe.swf" type="application/x-shockwave-flash"></embed>
</object>
</p>
只需确保使用CKEDITOR.instances.yourInstance.getData()
获取编辑器的数据切勿直接使用element.innerHTML
、$('ckeditor').html()
或类似产品。
编辑器的DOM中的内容并不是使用editor.getData()
得到的内容。这是因为编辑器执行高级处理、过滤和其他操作来返回有效的HTML,包括您的flash嵌入标记。
请参阅文档中的更多信息。