`

jquery控制表格隐藏多余字符

阅读更多

 

描述:脚本内容实现,tr单元格由于文本内容过宽影响整体样式问题。

效果:自定义宽度,单元格超出字符显示省略号,并且鼠标双击可复制全部内容(原文本不包含省略号)鼠标移动到省略文本的单元格上方,显示全部文本内容的浮动框,从而不影响文本的正常浏览。

 

使用:脚本需要jquery支持,请先引入jquery文件,在需要控制宽度的tr中设置属性class="ellipsis" 并指定"width"宽度属性(不指定宽度则根据js中widthDef的默认设置)

页面参考源码:  

<td class="ellipsis" width="105px">${name}</td>

 

页面效果:

<td class="ellipsis" title="Sky Gamblers: Storm Raiders">

    <div style="width: 105px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; ">Sky Gamblers: Storm Raiders</div>

</td>

 

 

 

$(function(){
// 查找TD下指定class="ellipsis"属性添加标签样式自动隐藏超出框度的字符

        // 查找表格中tr属性是否包含ellipsis的class
	if($("tr .ellipsis").length>0){
                // 遍历找到对象进行操作
		$("tr .ellipsis").each(function() {
                        // 设置默认宽度
			var widthDef = "105px";
                        // 由于tr标签不支持隐藏属性设置所以创建DIV来完成预期效果
			var div = document.createElement("div");
			// 获取表格文本内容
			var txt = $(this).html();
			// 设置提示文本(当鼠标移动到所在TD的单元格有浮动文本框提示完整的文本内容)
			$(this).attr("title",txt);
			// 指定宽度(获取TR的宽度实现不同单元格的自定义宽度,如果未设置则默认15%)
			if(typeof($(this).attr("width")) != "undefined"){
				widthDef = $(this).attr("width");
			}
                        // 动态创建隐藏超出宽度的样式
			$(div).css({"width":widthDef,"overflow":"hidden","text-overflow":"ellipsis","white-space":"nowrap"});
                        // 将动态生成带样式的DIV放回原来的标签中
			$(this).html($(div).html(txt));
		});
	}
});

 

 

分享到:
评论
1 楼 coral0212 2013-12-04  
感谢大神,测试用过很爽

相关推荐

    采用JQuery实现的打印HTML表格自动按多少行分页,打印时分页

    2. **隐藏多余行**:通过遍历表格的所有行,我们可以设置CSS样式(如`display:none`)来隐藏超出每页行数的行。在每一页打印时,只显示相应的行,其余行保持隐藏。 3. **分页导航**:创建一个分页导航栏,显示当前...

    java项目学习笔记

    - `display:none` 属性使得这些元素默认是隐藏的,可以通过JavaScript控制它们的显示与隐藏。 - `iframe` 的 `src` 属性定义了要加载的内容源地址。 ##### 2. 向DIV中填充内容 使用jQuery可以轻松地向指定的DIV元素...

    html\css\js\jq

    jQuery中的事件处理与原生JavaScript类似,但提供了更简便的API,同时也支持动画效果和音频视频播放的控制。 以上所述的技术点是web开发的基石,无论是初学者还是有经验的开发者,都需要对这些知识点有深入的理解和...

    Jquery实现点击按钮,连续地向textarea中添加值的实例代码

    在当今的Web开发中,JavaScript库如jQuery扮演了重要的角色,因为它简化了文档对象模型(DOM)操作,并且能够更容易地创建丰富的用户界面。本篇文章介绍了如何使用jQuery来实现点击按钮连续向textarea元素中添加值的...

    js style.display=block显示布局错乱问题的解决方法

    在网页开发过程中,JavaScript(JS)常常用于控制元素的显示和隐藏,而`style.display`属性就是实现这一功能的关键。然而,在某些特定情况下,特别是涉及到表格(table)元素时,设置`display:block`可能会引发布局...

    获取非最后一列td值并将title设为该值的方法

    在网页开发中,有时我们...总结来说,通过jQuery,我们可以轻松地实现动态设置表格单元格的title属性,提高用户体验。这种方法对于数据展示丰富的网页尤其有用,因为它可以帮助用户快速理解鼠标悬停位置的具体信息。

    J2eeFAST企业级快速开发平台-其他

    J2eeFAST软件架构:核心框架:Spring Boot 2.2.5.RELEASE安全框架:Apache Shiro 1.4.2模板引擎:Freemarker前端:AdminLTE 2.3.8, Bootstrap 3.3.7, Bootstrap-Table 1.11.0, JQuery 3.3.1持久层框架:MyBatis-Plus...

    adoteaqui10

    5. 内容元素:如段落`&lt;p&gt;`,标题`&lt;h1&gt;`到`&lt;h6&gt;`,列表`&lt;ul&gt;`和`&lt;ol&gt;`,链接`&lt;a&gt;`,图像`&lt;img&gt;`,表格`&lt;table&gt;`,以及其他交互元素。 在学习和分析"adoteaqui10"时,我们应关注以下几个方面: - HTML语法规则是否...

Global site tag (gtag.js) - Google Analytics