TAB.JPG

          上面是實際效果,雖然丑陋。不過當時寫這個效果的時候也并不順利。

          代碼如下:
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
          <style>
          #tab
          {
           table-layout:auto;
           border-collapse:collapse;
           border:1px solid #000000;
           width:100%;
          }
          div
          {
           width:100%;
           margin:0px;
           padding:0px;
           overflow:auto;
           border: 1px solid #4CA2ED;
           background-color:#E8F2FE;
           font-size:9pt;
          }
          td
          {
           position:relative;
           padding:0px;
           margin:0px;
          }
          </style>
          <script type="text/javascript">
          function $(dom_id)
          {
           return document.getElementById(dom_id);
          }
          function MouseDownToResize(obj)

           obj.mouseDownY = event.clientY;
           $('td1').pareneTdH = $('td1').offsetHeight;
           $('td2').pareneTdH = $('td2').offsetHeight;
           $('td3').pareneTdH = $('td3').offsetHeight;
           $('tab').pareneTableH = $('tab').offsetHeight;
           obj.setCapture();//事件擴張
          }
          function MouseMoveToResize(obj)

           if(!obj.mouseDownY) return false;
           var newHeight = $('td2').pareneTdH*1+event.clientY*1-obj.mouseDownY;
           //拖動
           if((newHeight<0 && -1*newHeight<$('td1').pareneTdH )||(newHeight>0 && newHeight<$('td3').pareneTdH))
           {
              $('td1').style.height = $('td1').pareneTdH+newHeight;
              $('td3').style.height = $('td3').pareneTdH-newHeight;
           $('div1').style.height = $('td1').pareneTdH+newHeight;
              $('div3').style.height = $('td3').pareneTdH-newHeight;
           $('tab').style.height = $('tab').pareneTableH;
           window.status = newHeight +"||"+ $('td3').style.height;
           }
          }
          function MouseUpToResize(obj)
          {
              obj.releaseCapture();
              obj.mouseDownY=0;
          }
          </script>
          </head>
          <body>
            <table id="tab" cellpadding="0" cellspacing="0">
              <tr><td valign=top id="td1"><div id="div1" style="height:250px;">
          <pre> 
          function $(dom_id)
          {
           return document.getElementById(dom_id);
          }
          function MouseDownToResize(obj)

           obj.mouseDownY = event.clientY;
           $('td1').pareneTdH = $('td1').offsetHeight;
           $('td2').pareneTdH = $('td2').offsetHeight;
           $('td3').pareneTdH = $('td3').offsetHeight;
           $('tab').pareneTableH = $('tab').offsetHeight;
           obj.setCapture();//事件擴張
          }
          function MouseMoveToResize(obj)

           if(!obj.mouseDownY) return false;
           var newHeight = $('td2').pareneTdH*1+event.clientY*1-obj.mouseDownY;
           //拖動
           if((newHeight<0 && -1*newHeight<=$('td1').pareneTdH )||(newHeight>0 && newHeight<=$('td3').pareneTdH))
           {
              $('td1').style.height = $('td1').pareneTdH+newHeight;
              $('td3').style.height = $('td3').pareneTdH-newHeight;
           $('div1').style.height = $('td1').pareneTdH+newHeight;
              $('div3').style.height = $('td3').pareneTdH-newHeight;
           $('tab').style.height = $('tab').pareneTableH;
           window.status = newHeight +"||"+ $('td3').style.height;
           }
          }
          function MouseUpToResize(obj)
          {
              obj.releaseCapture();
              obj.mouseDownY=0;
          }
          </pre>
           </div></td></tr>
           <tr bgcolor="#000" height="2" onmousedown="MouseDownToResize(this);" onmousemove="MouseMoveToResize(this);" onmouseup="MouseUpToResize(this);" style="cursor:n-resize;"><td id="td2"></td></tr>
           <tr><td id="td3"><div id="div3" style="height:150px;"></div></td></tr>
            </table>
          </body>
          </html>
          posted on 2007-12-24 02:35 -274°C 閱讀(1408) 評論(1)  編輯  收藏 所屬分類: web前端


          FeedBack:
          # re: JavaScript 拖動改變面板大小[未登錄]
          2007-12-24 09:34 | BeanSoft
          感謝!  回復  更多評論
            

          常用鏈接

          留言簿(21)

          隨筆分類(265)

          隨筆檔案(242)

          相冊

          JAVA網站

          關注的Blog

          搜索

          •  

          積分與排名

          • 積分 - 914107
          • 排名 - 40

          最新評論

          主站蜘蛛池模板: 泸定县| 长寿区| 昆明市| 长海县| 海丰县| 陵川县| 志丹县| 台安县| 张家界市| 邵阳县| 浦县| 景洪市| 古浪县| 苗栗县| 高尔夫| 西贡区| 和田市| 九龙县| 米林县| 崇信县| 兴海县| 会泽县| 祁阳县| 孙吴县| 香河县| 资阳市| 高要市| 山西省| 通渭县| 屏南县| 油尖旺区| 荆门市| 斗六市| 炎陵县| 台湾省| 吉水县| 南充市| 山阳县| 睢宁县| 杭州市| 淮阳县|