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 閱讀(1412) 評論(1)  編輯  收藏 所屬分類: web前端


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

          常用鏈接

          留言簿(21)

          隨筆分類(265)

          隨筆檔案(242)

          相冊

          JAVA網站

          關注的Blog

          搜索

          •  

          積分與排名

          • 積分 - 916110
          • 排名 - 40

          最新評論

          主站蜘蛛池模板: 济阳县| 右玉县| 高碑店市| 光山县| 禹州市| 珲春市| 崇左市| 高陵县| 彰化市| 巴彦淖尔市| 德庆县| 自治县| 琼中| 庄河市| 东平县| 崇义县| 乌海市| 富蕴县| 什邡市| 德阳市| 威海市| 灯塔市| 高雄县| 玛曲县| 大邑县| 梨树县| 得荣县| 林甸县| 沐川县| 阜新市| 新化县| 伊宁市| 濮阳市| 江口县| 维西| 根河市| 明水县| 吉安县| 宁远县| 渭南市| 绥江县|