zoukankan      html  css  js  c++  java
  • 标题、内容段末文本溢出“......”显示

    标题、内容段末文本溢出“......”显示
     1 <!doctype html>
     2 <html>
     3 
     4     <head>
     5         <meta charset="utf-8">
     6         <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
     7         <!--meta标签注释:如果安装了GCF,则使用GCF来渲染页面,如果为安装GCF,则使用最高版本的IE内核进行渲染。-->
     8         <title>文本溢出截取...</title>
     9         <link rel="stylesheet" href="css/min.css" /> <!--公共css样式-->
    10         <link rel="stylesheet" href="css/index.css" />
    11     </head>
    12 
    13     <body>
    14         <h1>NO.1</h1>
    15         <div class="main_one">
    16             <p>
    17                 生于蜂农之家的王佩甫先生,自小便追随父母辗转全国,天南海北,哪里花开,就往哪里赶。人在哪,家就在哪。追花虽辛苦,但对于养蜂人来说,苦尽甘来,收获琼浆,便能支撑起一家人的生活。 上世纪90年代,已深谙养蜂之道的王佩甫常骑着小车沿街兜售蜂蜜,后来在黔灵公园附近租了一个很小的门面落下了脚,渐渐有了回头客。1998年,王佩甫创办了贵州第一家公司化运营的蜂企业“百花蜂业”,并注册了品牌“黄果树蜂园”。
    18             </p>
    19         </div>
    20         </br>
    21         </br>
    22         <h1>NO.2</h1>
    23         <div class="main_ones">
    24             <p>
    25                 痛客网设立严格的准入规则,专人上门验证审核,并通过大数据背景调查,力保服务商信息真实可靠。全新的企业服务产品线涵盖办公司、找人财法、找技术、找市场、创新方案等5大类别、200多个细类,全方位满足企业各环节需求。 企业用户想要获取企业服务,只需要登录痛客网,就可以像在天猫购买商品一样,在痛客网上买服务! 目前,签约入驻痛客网的服务商已达到357家,其中不乏东软、用友、方正、财新、和君咨询、中细软、快法务、中青博联、埃摩森、泰和泰、法大大等品牌服务商。就在今天,同样都是为上班族解决痛点的痛客与ofo小黄车,要一起搞事情啦!
    26             </p>
    27         </div>
    28         </br>
    29         </br>
    30         <h1>NO.3</h1>
    31         <div class="main_onees">
    32             <p>
    33                 痛客×ofo | 90天单车免费骑!解决企业痛点,“骑”实可以很轻松!
    34             </p>
    35         </div>
    36     </body>
    37     <script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
    38     <script type="text/javascript" src="js/jquery-overflow.js" ></script>
    39     <script type="text/javascript">
    40         $('.main_one').ellipsis({
    41             english: false, //布尔。英文模式字符偏小,需扩大筛选空间,实际源码中是通过此参数修改并覆盖OP_NUM;
    42             lineNum: 2 //控制行数截取
    43         });
    44         $('.main_ones').ellipsis({
    45             english: false, //布尔。英文模式字符偏小,需扩大筛选空间,实际源码中是通过此参数修改并覆盖OP_NUM;
    46             lineNum: 2 //控制行数截取
    47         });
    48         $('.main_onees').ellipsis({
    49             english: false, //布尔。英文模式字符偏小,需扩大筛选空间,实际源码中是通过此参数修改并覆盖OP_NUM;
    50             lineNum: 1 //控制行数截取
    51         });
    52     </script>
    53 
    54 </html>

    css代码

    body {
        font: 12px/1.5 "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue";
    }
    
    .main_one p {
         800px;
        text-indent: 20px;
        text-align: justify;
    }
    
    .main_ones {
         500px;
        text-align: justify;
    }
    
    .main_onees {
         605px;
        text-align: justify;
    }
    jquery-overflow.js代码
    /**
     * jquery:2017-10-19
     * @version:1.0.1
     * @author:jason
     * @qq:847557896@qq.com
     */
    (function($) {
        $.fn.ellipsis = function(options) {
            //插件参数
            options = $.extend({
                //英文模式
                english: false,
                //优化系数
                OP_NUM: 1.3, //数字。优化系数,一般不需要设置。默认1.3中文模式,1.3*2.5英文模式
                //目标行数
                lineNum: "",
            }, options);
            $(this).each(function(index, element) {
                //优化系数
                var OP_NUM = options.OP_NUM;
                //wrap
                var $wrap = $(this);
                //目标p
                var $p = $('p', $wrap);
                //行数
                var lineNum = options.lineNum;
                //最初整篇文章
                var originAll = $p.text();
                //字体大小
                var pFontSize = parseInt($p.css('font-size'));
                //行高
                var pLineHeight = parseInt($p.css('line-height'));
                // 过去宽度
                var oldWidth = $p.width();
                // 现在宽度
                var nowWidth = oldWidth;
                //根据行数设置wrap高度
                var wrapHeight = lineNum * pLineHeight;
                $wrap.height(wrapHeight);
                // 英文模式,字符偏多,系数*2.5
                OP_NUM = options.english ? 1.3 * 2.5 : 1.3;
                //首次加载先进行一次粗略筛选
                $p.text(originAll.slice(0, lineNum * nowWidth / pFontSize * OP_NUM));
                //主功能
                function render() {
                    nowWidth = $p.width();
                    //当页面放大时,粗略筛选
                    if(nowWidth > oldWidth) {
                        $p.text(originAll.slice(0, lineNum * nowWidth / pFontSize * OP_NUM));
                    }
                    oldWidth = nowWidth;
                    //核心筛选
                    while($p.outerHeight() > wrapHeight) {
                        $p.text($p.text().replace(/s?(w+|W{1,3})(.{3})?$/, "..."));
                    };
                }
                render();
            });
        };
    })(jQuery);
  • 相关阅读:
    2. jvm-sandbox之结构和状态
    1. jvm-sandbox之小试牛刀
    redux中间件来执行异步操作
    redux
    vue简单插件
    VUE搭建
    用element-ui进行文件的上传
    完整的node脚手架搭建服务
    使用node来搭建简单的后台业务
    解决vuex数据页面刷新后初始化问题
  • 原文地址:https://www.cnblogs.com/zhangyingqin/p/7693340.html
Copyright © 2011-2022 走看看