我希望创建一个WYSIWYG编辑器,使用jQuery作为一个框架,我可以使用不同的方法来简化生产。
我现在确实有个有工作能力的编辑,而且效果很好。我使用一个iFrame,并将其设置为designMode,然后从那里开始。然而,有几件事困扰着我。
以更改选定文本的字体系列为例。我现在用的是:
editorDoc.execCommand('fontname', false, 'verdana');…现在,这很好:它在iFrame中正确地显示了更改。但是,当我实际查看代码(我将iFrame中的任何代码复制到隐藏的输入中,然后将其发布)时,它会生成
<font class="Apple-style-span" face="verdana">aasdf</font>我意识到第一类苹果风格的span是一个webkit的东西,这并不重要。困扰我的是<font>的全部使用。
研究execCommand,它看起来并不是一个标准,尽管大多数浏览器都支持它。不过,它已经过时了,所以我想知道是否有人听说过或知道有一种更好的方法来产生同样的效果,希望有一个更有语义的代码产品。如果不局限于iFrame,而是能够使用<textarea>,那也太棒了。
谢谢你,加雷斯
编辑: contentEditable能帮我实现不使用iFrame的目标吗?
发布于 2010-09-10 17:42:00
您可以使用常用的DOM方法对iframe的DOM进行任何操作。如果您需要一些见解,请查看TinyMCE的来源。
https://stackoverflow.com/questions/3686673
复制相似问题