日期:2014-05-16  浏览次数:20430 次

js 控制div的滚动条
现在项目有个需求,在div初始化是判断是否会出现横向滚动条,在出现横向滚动条时重新设置div的高度,急,谢谢!
div

------解决方案--------------------
这样说很绕啊,是说 div的 高度 是动态获取的的是把
------解决方案--------------------
你不去故意设置div的宽和高不行吗?
div里的内容是你后加的还是已经有了的
不明白你的意思
------解决方案--------------------
自动高度不行吗?
------解决方案--------------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
function change(){
var div=document.getElementById("test");
var con=div.innerHTML.split(/<br*?>/);
div.innerHTML="";
for(var i in con){
var l=con[i].length;
var k=parseInt(con[i].length/10)+1;
var s="";
for(var j=0;j<k;j++){
s+=con[i].substring(10*j,10*(j+1))+"<br/>";
}
div.innerHTML+=s;
}
}
</script>
</head>

<body>
<div id="test" style="width:200px; overflow:auto">
1<br/>
2<br/>
123456789123456789123456789123456789123456789<br/>
abcdefghklabcdefghklabcdefghklabcdefghklabcdefghklabcdefghklabcdefghkl<br/>
ss
</div>
<input type="button" value="change" onclick="change()">
</body>
</html>
类似这样试试
------解决方案--------------------
晕了,高度固定???

那你后来又要重设高度?

不想出现竖向滚动条?

那就高自动不就得了

不明白
------解决方案--------------------
引用:
div里面放了几天数据,每条数据的长度不一,高度是固定的,如果那条数据过长就会显示横滚,最后一条数据就显示不全,所以就想个办法动态的改变div的高度,在没横滚是不用管,有横滚时就把div的高度加长让最后一条数据也能显示全.
就这个业务要是有别的办法请赐教!

在div里面再加个div,里面的div高度不要固定,外面高度固定。
假如里面的div高度超过外面的div高度,那设置外面div高度等于里面高度。
------解决方案--------------------
IE加个word-break:break-all就会一大串的字母就会自动换行了,firefox没得办法,只能按照5#的截断