首页 >web前端 >js教程 >jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法

jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法

亚连
亚连原创
2018-05-28 15:56:392015浏览

这篇文章主要介绍了jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法,涉及jQuery针对页面元素属性动态操作相关实现技巧,需要的朋友可以参考下

本文实例讲述了jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>www.jb51.net jQuery自动添加省略号</title>
  <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
  <script type="text/javascript">
    $(function () {
      $(".figcaption").each(function (i) {
        var pH = $(this).height();
        var $p = $("p", $(this)).eq(0);
        while ($p.outerHeight() > pH) {
          $p.text($p.text().replace(/(\s)*([a-zA-Z0-9]+|\W)(\.\.\.)?$/, "..."));
        };
      });
    });
  </script>
  <style>
    *{
      padding: 0px;
      margin: 0px;
    }
    .figcaption{
      width: 300px;
      height: 50px;
      /*根据父元素的高度来添加省略号
      *可以任意设置显示的行数
      */
      border: 1px solid red;
    }
  </style>
</head>
<body>
  <p class="figcaption">
    <p>
      You probably can&#39;t do it (currently?) without a fixed-width font like Courier. With
      a fixed-width font every letter occupies the same horizontal space, so you could
      probably count the letters and multiply the result with the current font size in
      ems or exs. Then you would just have to test how many letters fit on one line, and
      then break it up.</p>
  </p>
</body>
<script>
</script>
</html>

运行效果:

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

AJAX封装类使用指南

AJAX初级教程之初识AJAX

Ajax中浏览器和服务器交互详解

以上是jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn