jQuery实现长文字部分显示代码


Posted in Javascript onMay 13, 2013

在网页上只有一个小区域,但是说明性的文字又很长,下面这段脚本实现的是长文字的部分显示。
当用户点击展开时,文字展开,合起是文字合起。

本来用jQuery自带的toggle()就可以写,但是我做的时候 toggle一直不work,所以就用了click + 标志位来做的

<script language="javascript" src="jquery.js"></script> 
<script language="javascript"> 
var cur_status = "less"; 
$.extend({ 
show_more_init:function(){ 
//alert("show_more_init!"); 
var charNumbers=$(".content").html().length;//总字数 
var limit=100;//显示字数 
if(charNumbers>limit) 
{ 
var orgText=$(".content").html();//原始文本 
var orgHeight=$(".content").height();//原始高度 
var showText=orgText.substring(0,limit);//最终显示的文本 
$(".content").html(showText); 
var contentHeight=$(".content").height();//截取内容后的高度 
$(".switch").click( 
function() { 
if(cur_status == "less"){ 
$(".content").height(contentHeight).html(orgText).animate({ height:orgHeight}, { duration: "slow" }); 
$(this).html("合起"); 
cur_status = "more"; 
}else{ 
$(".content").height(orgHeight).html(showText).animate({ height:contentHeight}, { duration: "fast" }); 
$(this).html("展开"); 
cur_status = "less"; 
} 
} 
); 
} 
else 
{ 
$(".switch").hide(); 
} 
} 
}); 
$(document).ready(function(){ 
$.show_more_init(); 
}); 
</script> 
<!DOCTYPE html> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>test</title> 
<style> 
#limittext{ 
width:640px; 
height:auto; 
position:relative; 
background-color:#ccc; 
color:black; 
} 
.switch{ 
font-size:12px; 
text-align:center; 
cursor:pointer; 
font-family:Verdana; 
font-weight:800; 
position:absolute; 
bottom:0; 
width:100%; 
/*background:url(more-bg.png) repeat-x bottom;*/ 
height:40px; 
line-height:80px; 
} 
</style> 
</head> 
<body> 
<div id="limittext" > 
<div class="content" style="padding-bottom:15px;"> 
这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字,这是很长的一段文字 
</div> 
<div class="switch">展开</div> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
js TextArea的选中区域处理
Dec 28 Javascript
GRID拖拽行的实例代码
Jul 18 Javascript
jquery禁止回车触发表单提交
Dec 12 Javascript
jQuery实现的进度条效果
Jul 15 Javascript
javascript每日必学之循环
Feb 19 Javascript
JS如何设置元素样式的方法示例
Aug 28 Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
Oct 26 Javascript
在React项目中使用Eslint代码检查工具及常见问题
Oct 10 Javascript
webstorm中配置Eslint的两种方式及差异比较详解
Oct 19 Javascript
layer.open的自适应及居中及子页面标题的修改方法
Sep 05 Javascript
vue样式穿透 ::v-deep的具体使用
Jun 04 Javascript
vue iview 隐藏Table组件里的某一列操作
Nov 13 Javascript
jq选项卡鼠标延迟的插件实例
May 13 #Javascript
jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法
May 13 #Javascript
怎么清空javascript数组
May 11 #Javascript
JS子父窗口互相操作取值赋值的方法介绍
May 11 #Javascript
js运动框架_包括图片的淡入淡出效果
May 11 #Javascript
jQuery判断iframe中元素是否存在的方法
May 11 #Javascript
js实现点击注册按钮开始读秒倒计时的小例子
May 11 #Javascript
You might like
关于laravel后台模板laravel-admin select框的使用详解
2019/10/03 PHP
Laravel框架控制器,视图及模型操作图文详解
2019/12/04 PHP
一个javascript参数的小问题
2008/03/02 Javascript
JavaScript两种跨域技术全面介绍
2014/04/16 Javascript
2014年最火的Node.JS后端框架推荐
2014/10/27 Javascript
JavaScript实现打字效果的方法
2015/07/10 Javascript
利用jQuery中的ajax分页实现代码
2016/02/25 Javascript
bootstrap fileinput 插件使用项目总结(经验)
2017/02/22 Javascript
angularjs之$timeout指令详解
2017/06/13 Javascript
详解使用路由延迟加载 Angular 模块
2017/10/12 Javascript
angular中ui calendar的一些使用心得(推荐)
2017/11/03 Javascript
vue项目中v-model父子组件通信的实现详解
2017/12/10 Javascript
electron demo项目npm install安装失败的解决方法
2018/02/06 Javascript
详解js静态检查工具eslint配置文件
2018/11/23 Javascript
JS数组去重的6种方法完整实例
2018/12/08 Javascript
详解javascript 变量提升(Hoisting)
2019/03/12 Javascript
[53:29]完美世界DOTA2联赛循环赛 DM vs Matador BO2第二场 11.04
2020/11/05 DOTA
Python的requests网络编程包使用教程
2016/07/11 Python
python将字符串以utf-8格式保存在txt文件中的方法
2018/10/30 Python
Python 分享10个PyCharm技巧
2019/07/13 Python
python配置文件写入过程详解
2019/10/19 Python
python机器学习实现决策树
2019/11/11 Python
Python2 与Python3的版本区别实例分析
2020/03/30 Python
python 利用百度API识别图片文字(多线程版)
2020/12/14 Python
移动端Web页面的CSS3 flex布局快速上手指南
2016/05/31 HTML / CSS
一名毕业生的自我鉴定
2013/12/04 职场文书
能源工程专业应届生求职信
2014/03/01 职场文书
团队拓展活动方案
2014/08/28 职场文书
机关单位工作失职检讨书
2014/11/20 职场文书
2014年帮扶工作总结
2014/11/26 职场文书
投标邀请书范本
2015/02/02 职场文书
财务个人年度总结范文
2015/02/26 职场文书
工作态度检讨书范文
2015/05/06 职场文书
感谢信
2019/04/11 职场文书
CSS变量实现主题切换的方法
2021/06/23 HTML / CSS
详解Python内置模块Collections
2022/03/22 Python