我很难理解为什么ckeditor在某些网站上无法正常工作。
此链接https://sdk.ckeditor.com/samples/mediaembed.html的样本甚至都不起作用。特别是如果我放置诸如“http://www.bbc.com/”等其他链接,则它不会出现预览。但对于其他链接(例如youtube),它可以正常工作。
安装的Ckeditor是4,我正在使用Iframely代理服务(此服务可以正常使用链接bbc.com,其中Ckeditor不起作用。
感谢每一个提示
答案 0 :(得分:0)
embed插件的工作方式是从响应中获取HTML并插入CKEditor。
如果是YouTube,则会获得如下HTML:
<div style=\"left: 0; width: 100%; height: 0; position: relative; padding-bottom: 56.2493%;\"><iframe src=\"https://www.youtube.com/embed/H08tGjXNHO4?rel=0&showinfo=0\" style=\"border: 0; top: 0; left: 0; width: 100%; height: 100%; position: absolute;\" allowfullscreen scrolling=\"no\"></iframe></div>
正如您所看到的,iframe
指向https://www.youtube.com/embed/H08tGjXNHO4?rel=0&showinfo=0
,您可以看到的预览实际上是该iframe的内容。
对于像http://www.bbc.com/news/technology-43127533这样的BBC链接,您会收到以下HTML:
<div class=\"iframely-embed\"><div class=\"iframely-responsive\" style=\"padding-bottom: 56.2493%; padding-top: 120px;\"><a href=\"http://www.bbc.com/news/technology-43127533\" data-iframely-url=\"https://cdn.iframe.ly/KpRiZX7\">AI ripe for exploitation, experts warn</a></div></div><script async src=\"https://cdn.iframe.ly/embed.js\" charset=\"utf-8\"></script>
正如您所看到的,在youtube的情况下没有iframe
,但有一个script
。问题是出于安全原因,脚本在编辑器内容区域内被阻止,因此查看BBC最终结果的唯一方法是使用Preview Button