jQuery / 在不丢失超链接的情况下删除 <p> 或在文本下方阅读更多内容

时间:2021-06-03 23:54:39

标签: jquery

在文本旁边保留“阅读更多”并从 var content = $(".myClass p").html(); 中删除“p”的任何想法;不丢失超链接?非常感谢..

      var show_char = 280;
      var ellipses = "... ";
      var content = $(".myClass").html();
      if (content.length > show_char) {
         var a = content.substr(0, show_char);
         var b = content.substr(show_char - content.length);

         var html = a + "<span class=\'abc\'>" + ellipses + "</span><span class=\'abc\' style=\'display:none\'>" + b + "</span><a class=\'read-more\' href=\'#\'>Read more</a>";        
        $(".myClass").html(html);
      }
      $(".read-more").click(function(e) {
         e.preventDefault();
         $(".read-more").text() == "Read more" ? $(".read-more").text(" Read less") : $(".read-more").text("Read more");     
         $(".myClass .abc").toggle();
      });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="myClass">
  <p><a href="https://stackoverflow.com/">stackoverflow</a> is a question and answer site for professional and enthusiast programmers. It features questions and answers on a wide range of topics in computer programming. It was created to be a more open alternative to earlier question and answer sites such as Experts-Exchange.</p>
</div>

1 个答案:

答案 0 :(得分:0)

只需要做一件小事,这应该可以正常工作。您可以包含子组合器 ( > ) 来捕获 df = County 0 Maricopa 1 Hillsborough 2 Henry 3 Ogle 4 Mitchell 5 Melbourne url='https://public.opendatasoft.com/explore/dataset/us-zip-code-latitude-and-longitude/download/?format=csv&timezone=America/New_York&lang=en&use_labels_for_header=true&csv_separator=%3B' uszip=pd.read_csv(url,sep=";") df['Latitude'] = df['County'].map(dict(uszip[['City','Latitude']])) df = County Latitude 0 Maricopa NaN 1 Hillsborough NaN 2 Henry NaN 3 Ogle NaN 4 Mitchell NaN 5 Melbourne NaN 内的 p 标记,同时省略在第三行中写入标记,即 .myClass
我希望这有帮助!如果答案有助于解决您的问题,请随时将其标记为已接受,请点击此答案左侧的 ✓

var content = $(".myClass").html();
var show_char = 280;
      var ellipses = "... ";
      var content = $(".myClass >*").html(); 
      
      if (content.length > show_char) {
        var a = content.substr(0, show_char);
        var b = content.substr(show_char - content.length);
        var html = a + "<span class=\'abc\'>" + ellipses + "</span><span class=\'abc\' style=\'display:none\'>" + b + "</span><a class=\'read-more\' href=\'#\'>Read more</a>";
        $(".myClass").html(html);
      }
      $(".read-more").click(function(e) {
         e.preventDefault();
         $(".read-more").text() == "Read more" ? $(".read-more").text(" Read less") : $(".read-more").text("Read more");     
         $(".myClass .abc").toggle();
      });
html {
  font-size: 18px;
  font-family: sans-serif
}