我正在制作一个带有实时预览的编辑器,这意味着当我在HTML
内输入textarea
个代码时,它会自动显示在iFrame
内部,我目前有以下代码:选择iFrame
:document.getElementById("IFRAME").contentWindow.document.activeElement
中的活动元素,但是我如何才能使它在单击iFrame
中的元素时,它将选择我在textarea
中编写的元素的源代码。 {1}}?一个概念也会很好。
我最初的概念是:
当我点击element
内的iframe
时,它会获得innerHTML
的{{1}}并在activeElement
中搜索它,但是如果用户有多个具有相同textarea
的{{1}}相同的问题,那么问题是什么?所以那不行。
粗略代码(仅供概念使用):
HTML:
elements
JAVASCRIPT:
innerHTML
答案 0 :(得分:1)
在我看来,当您从textarea在iFrame上生成预览时,您应该通过包含一个说明符来创建dom元素,该说明符充当textarea中的内容与iFrame中的内容之间的链接。你可以开始为你在iFrame上生成的每个标签分配一个id,它可以是文本区域中的光标位置/字符索引等(这需要更多的操作,我在这里提到你需要重新分配iFrame中的ID,并不总是每个人都在textarea的末尾键入文本)。
这样,当有人在iFrame上进行选择时,您就可以捕获textarea上内容的确切位置。