html中上下左右拖拉横线控制div宽度示例

转载 2016年05月30日 16:33:51

效果图如下:


源码如下:

</pre><br style="font-family: Arial; font-size: 14px; line-height: 26px;" /><pre name="code" class="html"><!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>例子</title>
<style>
ul,li{margin:0;padding:0;}
body{font:14px/1.5 Arial;color:#666;}
#box{position:relative;width:600px;height:400px;border:2px solid #000;margin:10px auto;overflow:hidden;}
#box ul{list-style-position:inside;margin:10px;}
#top,#bottom{color:#FFF;width:300px;height:400px;overflow:hidden;}
#top{background:green; float:left}
#bottom{background:blue;float:right}
#line{position:absolute;top:0;left:50%;height:100%;width:4px;overflow:hidden;background:red;cursor:w-resize;}
</style>
<script>
function $(id) {
	return document.getElementById(id)	
}
window.onload = function() {
	var oBox = $("box"), oTop = $("top"), oBottom = $("bottom"), oLine = $("line");
	oLine.onmousedown = function(e) {
		var disX = (e || event).clientX;
		oLine.left = oLine.offsetLeft;
		document.onmousemove = function(e) {  
			var iT = oLine.left + ((e || event).clientX - disX);
            var e=e||window.event,tarnameb=e.target||e.srcElement;
			var maxT = oBox.clientWight - oLine.offsetWidth;
			oLine.style.margin = 0;
			iT < 0 && (iT = 0);
			iT > maxT && (iT = maxT);
			oLine.style.left = oTop.style.width = iT + "px";
			oBottom.style.width = oBox.clientWidth - iT + "px";
            $("msg").innerText='top.width:'+oLine.style.width+'---bottom.width:'+oBottom.style.width+'---oLine.offsetLeft:'+oLine.offsetLeft+'---disX:'+disX+'---tarnameb:'+tarnameb.tagName;
			return false
		};	
		document.onmouseup = function() {
			document.onmousemove = null;
			document.onmouseup = null;	
			oLine.releaseCapture && oLine.releaseCapture()
		};
		oLine.setCapture && oLine.setCapture();
		return false
	};
};
</script>
</head>
<body>
<center>左右拖动红条改变显示区域高度<span id="msg"></span></center>
<div id="box">
    <div id="top">
        <ul>
            <li>西安一大厦发生爆炸7人遇难31人受伤</li>
            <li>意大利经济学家蒙蒂出任过渡政府总理</li>
            <li>天宫神八今晚分离后再对接 全程需半小时</li>
            <li>吉林骗子承包厨子施工铁路桥墩将爆破拆除</li>
            <li>胡锦涛:人民币升值无法解决美国问题</li>
            <li>红会否认通过民政部门索捐 称按工龄捐款属谣言</li>
            <li>昆明警车拒绝救助临产孕妇 市民称警察当时在玩游戏</li>
            <li>网帖称贫困县人社局80名员工公款赴港澳旅游</li>
        </ul>
    </div>
    <div id="bottom">
        <ul>
            <li>京沪高铁因质量问题被召回动车拟16日恢复运营</li>
            <li>黑龙江穆棱河污染致数万人饮水难近10年</li>
            <li>湖南政府采购买高不买低 琴行老板揭招标内幕</li>
            <li>云南师宗矿难副矿长承认用煤灰抹脸假装逃生</li>
            <li>中介操控卵子黑市 北大清华女生卖卵可得数万元</li>
            <li>云南一村庄户籍"不存在" 村民身份不明四处碰壁</li>
            <li>河北燕郊数千人陷传销 称发展下线可获利百万</li>
            <li>国际原子能机构出示图片证明伊朗研发核武器</li>
        </ul>
    </div>
    <div id="line"></div>
</div>
</body>
</html>


效果图如下:


源码如下:

<pre name="code" class="html"><!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>例子</title>
<style>
ul,li{margin:0;padding:0;}
body{font:14px/1.5 Arial;color:#666;}
#box{position:relative;width:600px;height:400px;border:2px solid #000;margin:10px auto;overflow:hidden;}
#box ul{list-style-position:inside;margin:10px;}
#top,#bottom{color:#FFF;height:200px;overflow:hidden;}
#top{background:green;}
#bottom{background:blue;}
#line{position:absolute;top:50%;width:100%;height:4px;overflow:hidden;margin-top:-2px;background:red;cursor:n-resize;}
</style>
<script>
function $(id) {
	return document.getElementById(id)	
}
window.onload = function() {
	var oBox = $("box"), oTop = $("top"), oBottom = $("bottom"), oLine = $("line");
	oLine.onmousedown = function(e) {
		var disY = (e || event).clientY;
		oLine.top = oLine.offsetTop;
		document.onmousemove = function(e) {
			var iT = oLine.top + ((e || event).clientY - disY);
			var maxT = oBox.clientHeight - oLine.offsetHeight;
			oLine.style.margin = 0;
			iT < 0 && (iT = 0);
			iT > maxT && (iT = maxT);
			oLine.style.top = oTop.style.height = iT + "px";
			oBottom.style.height = oBox.clientHeight - iT + "px";
			return false
		};	
		document.onmouseup = function() {
			document.onmousemove = null;
			document.onmouseup = null;	
			oLine.releaseCapture && oLine.releaseCapture()
		};
		oLine.setCapture && oLine.setCapture();
		return false
	};
};
</script>
</head>
<body>
<center>上下拖动红条改变显示区域高度</center>
<div id="box">
    <div id="top">
        <ul>
            <li>西安一大厦发生爆炸7人遇难31人受伤</li>
            <li>意大利经济学家蒙蒂出任过渡政府总理</li>
            <li>天宫神八今晚分离后再对接 全程需半小时</li>
            <li>吉林骗子承包厨子施工铁路桥墩将爆破拆除</li>
            <li>胡锦涛:人民币升值无法解决美国问题</li>
            <li>红会否认通过民政部门索捐 称按工龄捐款属谣言</li>
            <li>昆明警车拒绝救助临产孕妇 市民称警察当时在玩游戏</li>
            <li>网帖称贫困县人社局80名员工公款赴港澳旅游</li>
        </ul>
    </div>
    <div id="bottom">
        <ul>
            <li>京沪高铁因质量问题被召回动车拟16日恢复运营</li>
            <li>黑龙江穆棱河污染致数万人饮水难近10年</li>
            <li>湖南政府采购买高不买低 琴行老板揭招标内幕</li>
            <li>云南师宗矿难副矿长承认用煤灰抹脸假装逃生</li>
            <li>中介操控卵子黑市 北大清华女生卖卵可得数万元</li>
            <li>云南一村庄户籍"不存在" 村民身份不明四处碰壁</li>
            <li>河北燕郊数千人陷传销 称发展下线可获利百万</li>
            <li>国际原子能机构出示图片证明伊朗研发核武器</li>
        </ul>
    </div>
    <div id="line"></div>
</div>
</body>
</html>



                    

html中上下左右拖拉横线控制div宽度示例

效果图如下: 源码如下: 例子 ul,li{margin:0;padding:0;} body{font:14px/1.5 Arial;color:#666;} #box{pos...

div实现拖拽效果,宽度发生变化

最近项目中,需要写个能够拖拽的div,从网上找了相关的代码,为了方便以后使用,记下。 div width resize function bindResize(el) { //初始化参...

可以拖动的table--html

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

js 实现table每列可左右拖动改变列宽度

table 用户编号 试用时间转正时间性别姓名拼音 生日时间民族身高 2000001 1997-3-131997-3-131WZJ 1965-3-13汉171 ...
  • zanychou
  • zanychou
  • 2015年07月21日 16:52
  • 13174

html5 input type="range"实现拖拉滑条功能

本文是最新的html5技术 实现拖拉条功能。实现如下图所示效果 主要功能实现是在拖拉滑动条后,在后台处理textbox中相应的值。但是有的浏览器在拖动滑动条是,textbox里面的值一直变化,会...

MySQL为字段添加默认时间(插入时间)

应用场景:   1、在数据表中,要记录每条数据是什么时候创建的,不需要应用程序去特意记录,而由数据数据库获取当前时间自动记录创建时间; 2、在数据库中,要记录每条数据是什么时候修...

【知乎】上关于数据规模与大数据平台方面的一个讨论

请问单月数亿/年度超过十亿级规模的日志分析系统需要使用Hadoop吗?   目前在小范围试用的一个系统,生产环境用的Oracle数据库。系统的行为日志模块要详细记录所有用户(总的活跃用户规模大概几百...

html div自适应动态上下左右居中

html的body里只放一个div,其他的内容放在这个div里,设置div的样式如下: div{ position:absolute; background:#404040; ...

html div 切割 上下左右 四个div

.box{ width:1200px; height:100%; min-height:550px; border: 1px solid #c0c0c0; } /**box上*/ .box-...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:html中上下左右拖拉横线控制div宽度示例
举报原因:
原因补充:

(最多只允许输入30个字)