function DebugObject(obj)
{
  var msg = "";
  for (var i in TB) {
    ans=prompt(i+"="+TB[i]+"\n");
    if (! ans) break;
  }
}function LayoutTBs()
{
  NumTBs = yToolbars.length;  if (NumTBs == 0) return;  var i;
  var ScrWid = (document.body.offsetWidth) - 6;
  var TotalLen = ScrWid;
  for (i = 0 ; i < NumTBs ; i++) {
    TB = yToolbars[i];
    if (TB.TBWidth > TotalLen) TotalLen = TB.TBWidth;
  }  var PrevTB;
  var LastStart = 0;
  var RelTop = 0;
  var LastWid, CurrWid;
  var TB = yToolbars[0];
  TB.style.posTop = 0;
  TB.style.posLeft = 0;  var Start = TB.TBWidth;
  for (i = 1 ; i < yToolbars.length ; i++) {
    PrevTB = TB;
    TB = yToolbars[i];
    CurrWid = TB.TBWidth;    if ((Start + CurrWid) > ScrWid) {
      Start = 0;
      LastWid = TotalLen - LastStart;
    }
    else {
       LastWid = PrevTB.TBWidth;
       RelTop -= TB.offsetHeight;
    }    TB.style.posTop = RelTop;
    TB.style.posLeft = Start;
    PrevTB.style.width = LastWid;    LastStart = Start;
    Start += CurrWid;
  }  TB.style.width = TotalLen - LastStart;  i--;
  TB = yToolbars[i];
  var TBInd = TB.sourceIndex;
  var A = TB.document.all;
  var item;
  for (i in A) {
    item = A.item(i);
    if (! item) continue;
    if (! item.style) continue;
    if (item.sourceIndex <= TBInd) continue;
    if (item.style.position == "absolute") continue;
    item.style.posTop = RelTop;
  }
}function DoLayout()
{
  LayoutTBs();
}
function word()
{
HtmlEdit.document.execCommand("Paste",false);
var editBody=HtmlEdit.document.body;
for(var intLoop=0;intLoop<editBody.all.length;intLoop++){
el=editBody.all[intLoop];
el.removeAttribute("className","",0);
el.removeAttribute("style","",0);
el.removeAttribute("font","",0);
}
var html=HtmlEdit.document.body.innerHTML;
html=html.replace(/<o:p>&nbsp;<\/o:p>/g,"");
html=html.replace(/o:/g,"");
html=html.replace(/<font>/g, "");
html=html.replace(/<FONT>/g, "");
html=html.replace(/<span>/g, "");
html=html.replace(/<SPAN>/g, "");
html=html.replace(/<SPAN lang=EN-US>/g, "");
html=html.replace(/<P>/g, "");
html=html.replace(/<\/P>/g, "");
  html=html.replace(/<\/SPAN>/g, "");
HtmlEdit.document.body.innerHTML = html;
format('selectall');
format('RemoveFormat');
}
function BtnMouseOver()
{
  if (event.srcElement.tagName != "IMG") return false;
  var image = event.srcElement;
  var element = image.parentElement;  if (image.className == "Ico") element.className = "BtnMouseOverUp";
  else if (image.className == "IcoDown") element.className = "BtnMouseOverDown";  event.cancelBubble = true;
}function BtnMouseOut()
{
  if (event.srcElement.tagName != "IMG") {
    event.cancelBubble = true;
    return false;
  }  var image = event.srcElement;
  var element = image.parentElement;
  yRaisedElement = null;  element.className = "Btn";
  image.className = "Ico";  event.cancelBubble = true;
}function BtnMouseDown()
{
  if (event.srcElement.tagName != "IMG") {
    event.cancelBubble = true;
    event.returnValue=false;
    return false;
  }  var image = event.srcElement;
  var element = image.parentElement;  element.className = "BtnMouseOverDown";
  image.className = "IcoDown";  event.cancelBubble = true;
  event.returnValue=false;
  return false;
}function BtnMouseUp()
{
  if (event.srcElement.tagName != "IMG") {
    event.cancelBubble = true;
    return false;
  }  var image = event.srcElement;
  var element = image.parentElement;  if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");  element.className = "BtnMouseOverUp";
  image.className = "Ico";  event.cancelBubble = true;
  return false;
}function getEl(sTag,start)
{
  while ((start!=null) && (start.tagName!=sTag)) start = start.parentElement;
  return start;
}function cleanHtml()
{
  var fonts = HtmlEdit.document.body.all.tags("FONT");
  var curr;
  for (var i = fonts.length - 1; i >= 0; i--) {
    curr = fonts[i];
    if (curr.style.backgroundColor == "#ffffff") curr.outerHTML = curr.innerHTML;
  }
}function getPureHtml()
{
  var str = "";
  var paras = HtmlEdit.document.body.all.tags("P");
  if (paras.length > 0) {
    for (var i=paras.length-1; i >= 0; i--) str = paras[i].innerHTML + "\n" + str;
  }
  else {
    str = HtmlEdit.document.body.innerHTML;
  }
  return str;
}
function Editor()
{
  //this.put_HtmlMode=setMode;
  this.put_value=putText;
  this.get_value=getText;
}function getText()
{
  if (bTextMode)
    return HtmlEdit.document.body.innerText;
  else
  {
    cleanHtml();
    cleanHtml();
    return HtmlEdit.document.body.innerHTML;
  }
}function putText(v)
{
  if (bTextMode)
    HtmlEdit.document.body.innerText = v;
  else
    HtmlEdit.document.body.innerHTML = v;
}
 
</script>
</BODY>
</HTML>

解决方案 »

  1.   

    高版本的eWebeditor里已经有这个功能了。下载格看看
      

  2.   

    DoLayout();
      window.onresize = DoLayout;
    上面有很多代码没用,主要解决这个   HtmlEdit.document.open();
      HtmlEdit.document.write(bodyTag);
      HtmlEdit.document.close();
      HtmlEdit.document.designMode="On";
    我在这段代码中的HtmlEdit.document.write(bodyTag);插入 HtmlEdit.document.body.onpaste = onPaste ;现在就是粘贴时不能触发 onPaste,不知哪里出错了. 
    // 粘贴时自动检测是否来源于Word格式
    function onPaste()
     {}