想在一个编辑器里的光标处加一个插入分页符的功能,插入内容为<div style="page-break-after:always"></div>js代码如下:
function a()
{
var oBody = _this.iframe.contentWindow.document;
var e=oBody.createElement( 'DIV' );
e.innerHTML='<span style="DISPLAY:none"> </span>'
with(e.style)
{
pageBreakAfter="always"
……
};
_this.iframe.contentWindow.document.body.appendChild(e);}现在的问题是:
该div出现的位置不是在光标处(即指定位置处),而是附加到了编辑器的最后位置,这个问题要怎么解决呢?谢谢!
function a()
{
var oBody = _this.iframe.contentWindow.document;
var e=oBody.createElement( 'DIV' );
e.innerHTML='<span style="DISPLAY:none"> </span>'
with(e.style)
{
pageBreakAfter="always"
……
};
_this.iframe.contentWindow.document.body.appendChild(e);}现在的问题是:
该div出现的位置不是在光标处(即指定位置处),而是附加到了编辑器的最后位置,这个问题要怎么解决呢?谢谢!
解决方案 »
- 网页开发
- javascript如何传递数组到<img src = "xxx" >
- 这道题我试了很久,无法解决,看来只能由高手来解了
- 谁帮我解释下代码,一句一句麻烦请说清楚
- Microsoft JScript 运行时错误 错误 '800a1391'
- select控件读取xml内容
- 怎样取div的class 不是ID getElementById
- 能否让网页在提交的时候不使用IE里设置的代理服务器?
- 在JavaScript中调用new ActiveXObject("Scripting.FileSystemObject")会涉及安全问题吗?
- 这是什么问题呀?半天没找到原因
- 有难度,高手进!
- 在客户端如何获取服务器控件的属性值
this._iframe.contentWindow.document.selection.createRange().pasteHTML('<div></div>')没有测试 也不知道对不对
ff 就不清楚了.
都是用execCommand创建一个元素 如:创建一个img(因为用它可以指定到光标的位置)
然后用需要的元素替换掉那个img,就可以达到定位在光标所在的位置
FF 用 _this.iframe.contentWindow.document.execCommand('insertHTML',false, html);
if(document.frames)
Iframe = frames.document.frames("iframe");
else
Iframe= document.getElementById("iframe").contentWindow;
var range ;
if(Iframe.getSelection){
range=Iframe.getSelection().getRangeAt(0);
}else if(document.selection){
range=Iframe.document.selection.createRange();
}
if(range.pasteHTML)
{
range.pasteHTML("<div style='page-break-after:always'></div>");
}else{
var div= document.createElement("div");
div.style.pageBreakAfter='always';
range.surroundContents(div);
}