一行数据自适应不换行
来源:互联网 发布:韩服数据 编辑:程序博客网 时间:2024/05/17 23:29
很多时候我们的页面上会需要一个表格,或则任意但是希望所有的文字在一行中,放不下就显示。。。,为此我写了这个js。
上代码line_js.html
<!DOCTYPE html><html> <script type="text/javascript" src="js/jquery-3.1.1.min.js"></script> <script type="text/javascript" src="js/line_change1.js" ></script> <style> </style> <head> <meta charset="UTF-8"> <title></title> </head> <body> <table style="width: 100%;"> <tr class="line_zyq"> <td width="10%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="30%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> </tr> <tr class="line_zyq"> <td width="10%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="30%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> </tr> <tr class="line_zyq"> <td width="10%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="30%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> </tr> <tr class="line_zyq"> <td width="10%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="30%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> <td width="20%">啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃</td> </tr> </table> </body></html>
line_change.js//修改效果(闪屏)---lines_contents和lines_texts的值先付好别给真正的位置放东西,后$(document).ready(line_window_change)//内容集合var lines_contents = [ ["啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊"], ["啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊"], ["啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊"], ["啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊"]];//文字集合var lines_texts = [ ["啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊"], ["啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊"], ["啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊"], ["啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊", "啊呜吃饭啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃饭吧啊啊呜吃", "啊呜吃饭啊啊"]];//每一行的字数var fonts = [];var lineIndex = 0;var windowWidth = 0;var windowHeigth = 0;function line_document_change() { windowWidth = $(window).width(); windowHeigth = $(window).height(); $(".line_zyq").each(function() { //所设行的高度 var lineObjHeigth = $(this).height(); //所设行中的一行文字的高度 var lineObjFontHeigth = $(this).css("line-height"); //所设行的宽度 var lineObjWidth = $(this).width(); // var lineObjPadding=$(this).css("padding"); //所设行中文字的大小 var ss = $(this).css("font-size"); var lineObjFontSize = ss.substring(0, ss.length - 2); //所设行的子节点(不包含孙辈) var lineChildren = $(this).children(); //内容数组 var index = 0; var contents = []; var texts = []; $(this).children().each(function() { contents[index] = $(this).html(); texts[index] = $(this).text(); var fontNumber = parseInt(parseInt($(this).width()) / parseInt(lineObjFontSize)); var textLen = texts[index].length; if(fontNumber < textLen) { $(this).html("<span title='" + contents[index] + "'>" + texts[index].substring(0, fontNumber - 1) + "...</span>"); } index++; }); lines_contents[lineIndex] = contents; lines_texts[lineIndex] = texts; lineIndex++; }); for(var i = 0; i < lines_texts.length; i++) { var len = 0; for(var j = 0; j < lines_texts[i].length; j++) { len += lines_texts[i][j].length; } fonts[i] = len; }}function line_window_change() { if(windowWidth != $(window).width()) { windowWidth = $(window).width(); lineIndex = 0; for(var i = 0; i < lines_texts.length; i++) { var len = 0; for(var j = 0; j < lines_texts[i].length; j++) { len += lines_texts[i][j].length; } fonts[i] = len; } $(".line_zyq").each(function() { //所设行的高度 var lineObjHeigth = $(this).height(); //所设行中的一行文字的高度 var lineObjFontHeigth = $(this).css("line-height"); //所设行的宽度 var lineObjWidth = $(this).width(); //所设行中文字的大小 var ss = $(this).css("font-size"); var lineObjFontSize = ss.substring(0, ss.length - 2); //所设行的子节点(不包含孙辈) var lineChildren = $(this).children(); var index = 0; var line_fonts = (fonts[lineIndex] + lines_texts[0].length) * parseInt(lineObjFontSize); $(this).children().each(function() { if(line_fonts > lineObjWidth) { var fontNumber = parseInt(parseInt($(this).width()) / parseInt(lineObjFontSize)); var textLen = lines_texts[lineIndex][index].length; if(fontNumber < textLen) { $(this).html("<span title='" + lines_contents[lineIndex][index] + "'>" + lines_texts[lineIndex][index].substring(0, fontNumber - 1) + "...</span>"); } else { $(this).html(lines_contents[lineIndex][index]); } } else { $(this).html(lines_contents[lineIndex][index]); } index++; }); lineIndex++; }); }}$(window).resize(line_window_change);$(document).ready(line_document_change);//$(document).ready(line_window_change);
效果图
然后根据自己的需要修改吧
阅读全文
1 0
- 一行数据自适应不换行
- 实现数据一行展示不换行,不出滚动条
- python输出不换行(同一行输出不同类型数据)
- GridView、DateTable数据行 内容自适应 不换行
- 导出长数据不换行
- 一行固定一行自适应
- CSS设置一行内文字超过宽度不换行
- 两个div在同一行,两个div不换行
- 用CSS让字体在一行内显示不换行
- 用CSS让字体在一行内显示不换行
- 用CSS让字体在一行内显示不换行
- 用CSS让字体在一行内显示不换行
- HTML让字体在一行内显示不换行
- 用CSS让字体在一行内显示不换行
- testArea中的文字显示为一行,不换行
- 让表格的列自适应内容(列内容不换行)
- shell脚本不换行刷新数据
- shell脚本不换行刷新数据
- sql count(id)返回long型数据
- iOS11新特性,如何适配iOS11
- HDU6034 Balala Power!(思路+大数)
- android活动
- 剑指Offer:复杂链表的复制
- 一行数据自适应不换行
- Nginx 平滑升级
- 用python读取xml文件的写法举例
- Tomcat+Nginx+Keepalived+Redis集群
- Lua中的正则表达式
- LA 4987 n个人要到m个避难所 每个避难所最少一人 求所用最短距离
- c++中 override 和 overLoad的区别
- ArcGIS Flex中获取graphic中心点
- js判断页面输入框未输入内容或者输入的内容为空格