为什么我的CKEditor添加垃圾代码?

时间:2012-10-08 20:03:16

标签: php javascript ckeditor

我正在使用CKEditor进行后端应用程序。

我按照官方文档中的说明安装(非常简单)。 然而,当试图添加这个文本时(我可以在这篇文章中从SO复制/粘贴它,它完全相同):

  

您不仅希望别人听到您的声音。你希望他们听。

     

随着我们对新闻剪辑和专栏文章的关联,   在每分钟的基础上发布,发布,推特和重新发布,   这要求很多。全国各地的无数声音都淹没了   另一个在现代媒体的回声室中。未来的革命   可以结束企业备忘录的脚注,声誉可能会死亡或   转发Facebook发布状态所需的时间。

     

对于全球的企业和议程制定者来说,这一切都是一个   重要的问题:“我们如何超越噪音,真正做到了   影响?“

     

这就是我们进来的地方。

     

借鉴政治方面的大量公关经验   倡导和企业竞技场,N ** * 通信先锋   创造性和彻头彻尾的有效宣传活动   渗透全国性的对话并将其引导至我们的客户   目标。同步蜂鸣声意味着协调噪音。突然   你听了,不只是听到了。

     

我们为非营利和营利领域的客户提供服务,   领导项目,从政治竞选战略到   执行演讲。我们曾为首席执行官,当选官员,   从总统到地方的政治候选人,和   从527个小组到主要国家工会的进步组织。

我有这样的事情:

<p>
    &nbsp;</p>
<p 0px="" color:="" font-family:="" font-size:="" hear="" helvetica="" just="" line-height:="" p="" people="" style="margin: 0px 0px 10px; text-align: justify; font-size: 16px; color: rgb(51, 51, 51); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 20px; " t="" them="" to="" want="" you="" you.="">
    &nbsp;</p>
<p 0px="" color:="" font-family:="" font-size:="" hear="" helvetica="" just="" line-height:="" p="" people="" style="margin: 0px 0px 10px; " t="" them="" to="" want="" you="" you.="">
    Barraged as we are with news clips and op-eds that get linked, blogged, posted, tweeted and re-tweeted on a minute-to-minute basis, that&#39;s a lot to ask for. Countless voices across the nation drown each other out in the echochamber of modern media. Would-be revolutions can wind up footnotes on corporate memos, and reputations can die or reincarnate in the time it takes to post a Facebook status.</p>
<p 0px="" above="" agenda-setters="" all="" amounts="" an="" and="" businesses="" color:="" do="" font-family:="" font-size:="" for="" helvetica="" how="" important="" line-height:="" make="" noise="" one="" p="" question:="" really="" rise="" style="margin: 0px 0px 10px; " the="" this="" to="" we="">
    That&#39;s where we come in.</p>
<p 0px="" a="" advocacy="" and="" buzz="" campaigns="" color:="" communications="" conversations="" corporate="" creative="" direct="" downright="" drawing="" effective="" experience="" font-family:="" font-size:="" from="" goals.="" harmonizing="" heights="" helvetica="" in="" infiltrate="" just="" line-height:="" listened="" means="" national="" new="" noise.="" not="" of="" our="" p="" public="" re="" relations="" spearheads="" style="margin: 0px 0px 10px; " suddenly="" synchronizing="" that="" the="" them="" to="" wealth="">
    We service clients in both the nonprofit and for-profit spheres, leading projects which range from political campaign strategy to executive speechwriting. We&#39;ve worked for CEOs, elected officials, political candidates from the presidential to local level, and progressive organizations from 527 groups to major national unions.</p>

这完全是垃圾和无法使用,所以这就是我在源代码中获得的(如果我点击源代码),如果我决定保存该文本,则在数据库中。它最终似乎来自CKEditor本身。

这个问题来自哪里?

3 个答案:

答案 0 :(得分:1)

你确定你使用的是最新版本的CKEditor,并且你没有以某种奇怪的方式修改它吗?我正在选择,复制引用的文本并粘贴到http://ckeditor.com/demo的编辑器中,这是源代码的一部分:

火狐:

<blockquote>
    <p>
        You don&#39;t just want people to hear you. You want them to listen.</p>
    <p>
        Barraged as we are with news clips and op-eds that get linked, blogged, posted, tweeted and re-tweeted on a minute-to-minute basis, that&#39;s a lot to ask for. Countless voices across the nation drown each other out in the echo chamber of modern media. Would-be revolutions can wind up footnotes on corporate memos, and reputations can die or reincarnate in the time it takes to post a Facebook status.</p>
    <p>
        For businesses and agenda-setters worldwide, this all amounts to one important question: &quot;How do we rise above the noise and really make an impact?&quot;</p>

铬:

<p>
    &nbsp;</p>
<p style="margin: 0px 0px 1em; padding: 0px; border: 0px; font-size: 14px; vertical-align: baseline; background-color: transparent; clear: both; word-wrap: break-word; color: rgb(0, 0, 0); font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 18px; ">
    You don&#39;t just want people to hear you. You want them to listen.</p>
<p style="margin: 0px 0px 1em; padding: 0px; border: 0px; font-size: 14px; vertical-align: baseline; background-color: transparent; clear: both; word-wrap: break-word; color: rgb(0, 0, 0); font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 18px; ">
    Barraged as we are with news clips and op-eds that get linked, blogged, posted, tweeted and re-tweeted on a minute-to-minute basis, that&#39;s a lot to ask for. Countless voices across the nation drown each other out in the echo chamber of modern media. Would-be revolutions can wind up footnotes on corporate memos, and reputations can die or reincarnate in the time it takes to post a Facebook status.</p>
<div>
    &nbsp;</div>

现在,导致浏览器之间存在差异的原因是第二个来源是否正确?

首先 - 它不是CKEditor的错,但Chrome看起来像这样。它将样式HTML 放入剪贴板,我们无法对此做任何事情。当然你可以说在例如TinyMCE你只会得到文本,没有格式化。但这是处理粘贴内容的盲目方式。这样TinyMCE也失去了在编辑器中应用的内联样式 - 例如字体大小。在那里写几个字,应用字体大小,复制和粘贴,你就失去它。

所以......两个输出(Firefox和Chrome)都是正确的,这是我们能做的最好的。但是,如果你真的有类似于你所附的HTML,那么很可能是你网站上的问题。

答案 1 :(得分:1)

页面中可能存在与其他JavaScript的冲突,是否在页面中加载了其他JavaScript库或脚本?

尝试在测试页面中使用基本CKEditor设置默认配置设置可能是个好主意。这将让你知道它是否真的是CKEditor的问题。

如果您仍然遇到问题,请重新下载CKEditor和jQuery,然后再进行另一个测试页面。

答案 2 :(得分:1)

我找到了解决问题的方法。 这是因为我添加的post变量在被添加到数据库之前被传递到trim和xss过滤预处理函数。 这是造成这种奇怪行为的原因。