iFrame和Textarea编辑器实时预览和带有activeElement的“Designer Mode”

时间:2013-07-25 01:49:36

标签: javascript jquery html html5

我正在制作一个带有实时预览的编辑器,这意味着当我在HTML内输入textarea个代码时,它会自动显示在iFrame内部,我目前有以下代码:选择iFramedocument.getElementById("IFRAME").contentWindow.document.activeElement中的活动元素,但是我如何才能使它在单击iFrame中的元素时,它将选择我在textarea中编写的元素的源代码。 {1}}?一个概念也会很好。

我最初的概念是:

当我点击element内的iframe时,它会获得innerHTML的{​​{1}}并在activeElement中搜索它,但是如果用户有多个具有相同textarea的{​​{1}}相同的问题,那么问题是什么?所以那不行。

粗略代码(仅供概念使用):

HTML:

elements

JAVASCRIPT:

innerHTML

1 个答案:

答案 0 :(得分:1)

在我看来,当您从textarea在iFrame上生成预览时,您应该通过包含一个说明符来创建dom元素,该说明符充当textarea中的内容与iFrame中的内容之间的链接。你可以开始为你在iFrame上生成的每个标签分配一个id,它可以是文本区域中的光标位置/字符索引等(这需要更多的操作,我在这里提到你需要重新分配iFrame中的ID,并不总是每个人都在textarea的末尾键入文本)。

这样,当有人在iFrame上进行选择时,您就可以捕获textarea上内容的确切位置。