隨筆-57  評論-129  文章-0  trackbacks-0

          微軟的幫助文件,其提供了一個叫做“HTML Help Workshop”的工具制作和編譯。

          但是其目錄編輯的操作不是很方便,而且絕對是件非常枯燥的事情。

          看看他的目錄描述文件:

           <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
          <HTML>
          <HEAD>
          <meta name="GENERATOR" content="Microsoft® HTML Help Workshop 4.1">
          <!-- Sitemap 1.0 -->
          </HEAD>
          <BODY>
          <OBJECT type="text/site properties">
           <param name="ImageType" value="Folder">
          </OBJECT>
          <UL>
             <LI> <OBJECT type="text/sitemap">
                <param name="Name" value="index">
                <param name="Local" value="html\index.html">
                </OBJECT>
            <LI> <OBJECT type="text/sitemap">
               <param name="Name" value="前言">
               <param name="Local" value="html/preface.html">
               </OBJECT>
          ..........................
          </UL>
          </BODY></HTML>

          好了,是一種用html 文本描述的結構,我們只要在其中插入幾個表示目錄的OBJECT標記就是。

          對于hibernate 參考來說,其目錄寫在一個index.html文件中,我們可以簡單的通過網頁腳本吧它的目錄讀出,代碼如下:

          <textarea id=text rows="30" cols="100" wrap="off"
           ondblclick="writeTree(this)"
          ></textarea>

           <script>
           function writeTree(disp,root){
             if(root == null){
               root=document.body.getElementsByTagName("DL")[0];
             }
             var value = ""
             value += '<HTML><!-- Sitemap 1.0 --><BODY><OBJECT type="text/site properties"><param name="Window Styles" value="0x800025"><param name="ImageNumber" value="11"></OBJECT><UL>\n';
             value += buildTree(0,root);
             value += '</UL></BODY></HTML>';
             disp.value= value;
           }
           function buildTree(deep,root){
             var perfix="";
             for(var j=0;j<deep;j++){
               perfix+='\t';
             }
             var value="";
             var eles = root.childNodes;
             for(var i=0;i<eles.length;i++){
                var entry = eles[i];
                if(entry.tagName == "DT"){
                  var link = entry.getElementsByTagName("A")[0];
                  if(link.firstChild){
                    value+=perfix;
                    value+='<LI> <OBJECT type="text/sitemap">';
                  value+='<param name="Name" value="'+link.firstChild.nodeValue+'">';
                  value+='<param name="Local" value="guide/'+link.getAttribute("href")+'">';
                  value+='</OBJECT>\n';
                }
              }else if(entry.tagName == "DD"){
                var dir = entry.getElementsByTagName("DL")[0]; 
                value+=perfix+"<UL>\n";
                value+=buildTree(deep+1,dir);
                value+=perfix+"</UL>\n";
              }
               

             }
             return value;
           }
           </script>


          將這段代碼插入htm文件的body 元素后,打開,雙擊多行文本框。將聲稱chm 目錄描述,將其保存為contents.hhc,重新打開chm工程后,將contents.hhc文件加入到工程,編譯,chm 文件制作完成。






          評論也很精彩,請點擊查看精彩評論。歡迎您也添加評論。查看詳細 >>





          JavaEye推薦
          杭州:外企高薪聘請系統維護工程師(10-15K)
          杭州:國內大型網絡公司高薪招聘系統架構師,資深JAVA開發工程師
          北京:優秀公司NHNChina招聘:WEB開發,系統管理,JAVA開發, DBA
          廣州:急招 JAVA開發經理/系統架構師(10-15K/月)也招聘java程序員



          文章來源: http://jindw.javaeye.com/blog/33990
          posted on 2005-06-11 15:26 金大為 閱讀(77) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 牡丹江市| 东阳市| 青铜峡市| 镇宁| 衢州市| 阿拉善盟| 丹凤县| 淳安县| 潞西市| 秀山| 涿州市| 金山区| 上蔡县| 岳池县| 泾川县| 甘泉县| 毕节市| 丹江口市| 攀枝花市| 盐边县| 浦城县| 辽宁省| 平湖市| 财经| 隆德县| 沙洋县| 克东县| 吴堡县| 团风县| 宁海县| 陕西省| 大田县| 桓仁| 竹山县| 岳普湖县| 甘谷县| 讷河市| 凤凰县| 康乐县| 临西县| 如皋市|