文字溢出实现溢出的部分再放入一个新生成的div中具体代码


Posted in Javascript onMay 17, 2013

看到群里有人提了一个问题,说文字溢出,如何实现溢出的文字放入一个新生成的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>文字自动分插不同的div-Jason Yu</title> 
<style type="text/css"> 
*{margin:0;padding:0;} 
body{line-height:24px;font-family:SimSun;font-size:12px;color:#000;} 
#box1{height:96px;} 
.box{width:200px;overflow:hidden;margin-top:10px;border:1px solid #000;} 
</style> 
</head> 
<body> 
<div id="box1" class="box"></div> 
<script type="text/javascript"> 
var str = "这里是一段话,这短话的文字可以很随意的哦,只要达到一定数量,就自动会分页,你信不信?不信也得信啊,这是真的,哪怕再长的文字,我复制一段话吧,下面这一段话就是复制过来的,我要准备复制了哦,准备好了没呢?这里是一段话,这短话的文字可以很随意的哦,只要达到一定数量,就自动会分页,你信不信?不信也得信啊,这是真的,哪怕再长的文字,我复制一段话吧,下面这一段话就是复制过来的,我要准备复制了哦,准备好了没呢?"; 
var oBox1 = document.getElementById("box1"); 
function fnTextOver(n1){ 
var newBox2 = document.createElement("div"); 
document.body.appendChild(newBox2); 
newBox2.className = "box"; 
for(var i=n1; i<=str.length; i++){ 
newBox2.innerHTML = str.substring(n1,i); 
if(newBox2.offsetHeight<=98){ 
if(i==str.length){ 
newBox2.style.height = "96px"; 
} 
}else{ 
newBox2.innerHTML = str.substring(n1,i-1); 
newBox2.style.height = "96px"; 
arguments.callee(i-1); 
break; 
} 
} 
} function fnShowText(){ 
var newBox = document.createElement("div"); 
document.body.appendChild(newBox); 
newBox.className = "box"; 
for(var i=1; i<=str.length; i++){ 
newBox.innerHTML = str.substring(0,i); 
if(newBox.offsetHeight<=98){ 
oBox1.innerHTML = str.substring(0,i); 
if(i==str.length){ 
document.body.removeChild(newBox); 
} 
}else{ 
document.body.removeChild(newBox); 
fnTextOver(i-1); 
break; 
} 
} 
} 
fnShowText(); 
</script> 
</body> 
</html>

补充一下,可能出现的问题1、符号在下一个div第一个出现2、字母如"student"会被断开写,及其他问题,需用正则判断一下。
Javascript 相关文章推荐
Jquery插件之打造自定义的select标签
Nov 30 Javascript
浅谈Javascript事件处理程序的几种方式
Jun 27 Javascript
JS兼容浏览器的导出Excel(CSV)文件的方法
May 03 Javascript
实例讲解JS中数组Array的操作方法
May 09 Javascript
JavaScript fontcolor方法入门实例(按照指定的颜色来显示字符串)
Oct 17 Javascript
全面解析Bootstrap弹窗的实现方法
Dec 01 Javascript
jQuery实现两个select控件的互移操作
Dec 22 Javascript
超全面的JavaScript开发规范(推荐)
Jan 21 Javascript
JS基于面向对象实现的多个倒计时器功能示例
Feb 28 Javascript
解决修复npm安装全局模块权限的问题
May 17 Javascript
Webpack按需加载打包chunk命名的方法
Sep 22 Javascript
p5.js临摹动态图形实现方法详解
Oct 23 Javascript
JQuery DataTable删除行后的页面更新利用Ajax解决
May 17 #Javascript
extjs ColumnChart设置不同的颜色实现代码
May 17 #Javascript
JQuery设置和去除disabled属性的5种方法总结
May 16 #Javascript
javascript检测页面是否缩放的小例子
May 16 #Javascript
js获取键盘按键响应事件(兼容各浏览器)
May 16 #Javascript
js如何获取file控件的完整路径具体实现代码
May 15 #Javascript
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
May 15 #Javascript
You might like
PHP批量生成缩略图的代码
2008/07/19 PHP
ThinkPHP中使用ajax接收json数据的方法
2014/12/18 PHP
Thinkphp单字母函数使用指南
2016/05/08 PHP
微信支付PHP SDK ―― 公众号支付代码详解
2016/09/13 PHP
一个分享按钮的插件使用介绍(可扩展,内附开发制作流程)
2011/09/19 Javascript
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
JS+css 图片自动缩放自适应大小
2013/08/08 Javascript
Jquery AJAX POST与GET之间的区别
2013/11/14 Javascript
基于jQuery实现仿淘宝套餐选择插件
2015/03/04 Javascript
JavaScript实现数组随机排序的方法
2015/06/26 Javascript
JQuery fileupload插件实现文件上传功能
2016/03/18 Javascript
JavaScript表单焦点自动切换代码
2016/07/24 Javascript
JavaScript数组操作函数汇总
2016/08/05 Javascript
AngularJs Understanding the Controller Component
2016/09/02 Javascript
JavaScript仿微博发布信息案例
2016/11/16 Javascript
微信小程序 swiper制作tab切换实现附源码
2017/01/21 Javascript
JS库之wow.js使用方法
2017/09/14 Javascript
浅谈vue项目可以从哪些方面进行优化
2018/05/05 Javascript
JS中的JSON对象的定义和取值实现代码
2018/05/09 Javascript
JS运算符简单用法示例
2020/01/19 Javascript
Element Dropdown下拉菜单的使用方法
2020/07/26 Javascript
python基础教程之序列详解
2014/08/29 Python
python的exec、eval使用分析
2017/12/11 Python
Pandas分组与排序的实现
2019/07/23 Python
python gdal安装与简单使用
2019/08/01 Python
基于python实现把图片转换成素描
2019/11/13 Python
python3实现名片管理系统(控制台版)
2020/11/29 Python
Html5页面点击遮罩层背景关闭遮罩层
2020/11/30 HTML / CSS
Europcar英国:英国汽车和货车租赁
2017/01/21 全球购物
亚洲最大的运动鞋寄售店:KicksCrew
2020/11/26 全球购物
应届生.NET方向面试题
2015/05/23 面试题
一名女生的自荐信
2013/12/08 职场文书
季度思想汇报
2014/01/01 职场文书
团员年度个人总结
2015/02/26 职场文书
爱心捐赠活动简讯
2015/07/20 职场文书
CSS3实现的侧滑菜单
2021/04/27 HTML / CSS