用Word做html编纂器,是不是很拉风啊

3个月前 (11-26 15:46)阅读3回复0
wsygfsj
wsygfsj
  • 管理员
  • 注册排名5
  • 经验值130995
  • 级别管理员
  • 主题26199
  • 回复0
楼主

   公司以前用过soaoffice做文档系统中的在线编纂,记得soaoffice有另存word文档为html的功用,今天突然一想,那不是正好能够用做html编纂器吗,也许那个办法更好!!立即脱手尝试,成果觉得仍是蛮不错的,下面先分享一下构想:

   一个帖子对应一个word文件,想要编纂帖子的时候就编纂word文件,保留的时候同时另存为html文件,而且把html文件的途径保留在帖子的对应数据库笔录的字段里。在用户查看帖子的时候把html文件的途径赋值给iframe,也就是说旅客阅读帖子的时候就是用iframe加载贴子的html文件,因为那个html是word转的,所以格局仍是很不错的。

   代码阐明:

  1. default页:编纂帖子,编纂完毕之后点“发帖”按钮就能够查看帖子效果了。下面是关键代码,施行了那些关键代码款式就跟通俗的html编纂器一样了,当然你也能够不消隐躲那些功用。

  SOAOfficeX.SOAOfficeCtrl SOACtrl = new SOAOfficeX.SOAOfficeCtrl();

  SOACtrl.ServerURL = "soaservice/soaserv.aspx";

  SOACtrl.SaveHtmlURL = "savehtml.aspx"; //必需的,由savehtml页负责保留html文件

  SOACtrl.SaveDocURL = "savedoc.aspx";

  SOACtrl.Menubar = false; // 隐躲菜单栏

  SOACtrl.Titlebar = false; // 隐躲题目栏

  SOACtrl.WebOpen("doc/ttt.doc", SOAOfficeX.soaWorkMode.docNoRevision, "somebody", "Word.Document");

  SCRIPT language="JavaScript" event="OnDocumentOpened(str, obj)" for="SOAOfficeCtrl"

   SOAOfficeCtrl.Document.Application.ActiveWindow.ActivePane.View.Type = 6; // 用web视图体例

   SOAOfficeCtrl.Document.ActiveWindow.ActivePane.DisplayRulers = false; // 隐躲word标尺

  /SCRIPT

  2. view页:查看帖子

   关键代码:SetWinHeight设置iframe主动的适应html文档的高度

   script type="text/javascript"

   function SetWinHeight(obj) {

   var win = obj;

   if (document.getElementById) {

   if (win !window.opera) {

   if (win.contentDocument win.contentDocument.body.offsetHeight)

   win.height = win.contentDocument.body.offsetHeight;

   else if (win.Document win.Document.body.scrollHeight)

   win.height = win.Document.body.scrollHeight;

   /script

   在iframe onload的时候挪用:

   iframe id="test" original="doc/ttt.htm" onload="Javascript:SetWinHeight(this)" width="100%" height="100%" frameborder=0

   /iframe

   长处:1. 功用强,office的功用看东西条上的按钮就晓得了,事实其他html编纂器都是模仿office款式的;2. 避免sql注进,是另存 html文件,sql注进就没有时机;3. 利用简单,编纂word相信各人都不目生。

  代码下载:

0
回帖

用Word做html编纂器,是不是很拉风啊 期待您的回复!

取消