我有一个由我的CMS生成的论坛。我无法控制这段代码。在这段代码中,我需要插入HTML。我已经阅读了与此类似的其他帖子,但这些帖子都涉及在表单上使用<textarea>
。我的代码有点不同。
以下是生成的代码:
<iframe id="re_contentIframe">
<html>
<body>
</body>
</html>
</iframe>
当一个人输入时,它会自动将代码插入<body>
标签。
IE:
<iframe id="re_contentIframe">
<html>
<body>
<p>As a person types it adds the <p> tags.</p>
</body>
</html>
</iframe>
我有一个函数可以在人执行上传文件等操作时动态插入HTML。目前,该函数会在结束<body>
标记之前附加动态内容。我想要它做的是插入光标最后的HTML在iFrame的body标签内。
这是一个直观的例子:
<iframe id="re_contentIframe">
<html>
<body>
<p>Forum content is typed here.</p>
<p>Content.</p>
<p>Content.</p>
<p><!-- Last place the cursor was located is here! --></p>
<p>More forum content.</p>
</body>
</html>
</iframe>
在查看上面的代码时,我希望HTML完全插入光标所在的位置。在这个例子中,它是倒数第二个<p>
标签,但这不会总是在同一个地方。
是否可以这样做以及如何做?
换句话说:
[Find Cursor Position] function() {
//My code to insert HTML
});
修改
我的CMS生成论坛帖子的代码。渲染时,它显示为:
我姓名的部分是我可以编辑和输入的区域。我可以输入的区域由我的CMS生成,如下所示:
<iframe id="re_contentIframe">
<html>
<body>
Lynda =>
</body>
</html>
</iframe>
当我输入对此的HTML更改时:
<iframe id="re_contentIframe">
<html>
<body>
<p>What I type is wrapped in <p> tags by the forum code.</p>
<p>New Paragraph and so on...</p>
Lynda =>
</body>
</html>
</iframe>
我需要做的是在光标位于此iFrame主体的最后位置我需要在由JS函数触发的动作上插入代码。