怎么在html动态实现显示和隐藏效果

效果目标图:

这个还是比较好实现的,附源码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>点击查看全文</title>
    <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
    <style type="text/css">
      *{
  padding: 0;
  margin: 0;
}
.showAll{
  width: 60%;
  margin: 0 auto;
  background: #ecebeb;
  padding: 10px;
}
.showAll .title{
  font-size: 20px;
  font-weight: bold;
  color:#af0015;
}
.showAll .author{
  color: #a1a1a1;
  margin: 12px 0;
}
.showAll .content{
  display: none;   //注意这里让文字不显示
}
    </style>
    <script type="text/javascript">
      $(document).ready(function(){
  $(".showContent").click(function(){        //当“展开全文”按钮点击的时候
    $(".content").show();             //展示未完全显示的那部分内容
    $(this).parent().hide();           //此处需要注意隐藏简略说明的文字,因为原来文字里面最后有省略号,不隐藏的后果就是展开后省略号仍旧在那里
  });
  $(".hideContent").click(function(){         //当“收起全文”按钮点击的时候
    $(this).parent().hide();           //隐藏已经显示出来的文字
    $(".showContent").parent().show();       //将简略说明的文字显示出来
  });
});
    </script>
  </head>
  <body>
    <div class="showAll">
      <p class="title">
        一则励志故事
      </p>
      <p class="author">
         作者:来自网络 发表时间:2014-3-1
      </p>
      <p>
        彼得·韩德先生现任卡内基公司 (Dale Carnegie & Associates) 总裁及首席执行官。卡内基公司为训练界中的翘楚,在全世界85个国家有160个分支机构。
        除此之外,彼得先生还是数家大公司的董事,作为一个培训别人怎样获得成功的专业机构的总裁,他是怎样获得成功的呢?日前,记者在北京的东方君悦大酒店采访了
        这位CEO,听他讲述了自己是怎样获得成功的故事。
        彼得先生通过一个故事讲了他对成功的理解。他说他在五岁时因为生病去看医生,当时病痛...
        <a class="showContent" href="javascript:void(0);">查看全文</a>
      </p>
      <div class="content">
        彼得·韩德先生现任卡内基公司 (Dale Carnegie & Associates) 总裁及首席执行官。卡内基公司为训练界中的翘楚,在全世界85个国家有160个分支机构。
         除此之外,彼得先生还是数家大公司的董事,作为一个培训别人怎样获得成功的专业机构的总裁,他是怎样获得成功的呢?日前,记者在北京的东方君悦大酒店采访了
         这位CEO,听他讲述了自己是怎样获得成功的故事。
         彼得先生通过一个故事讲了他对成功的理解。他说他在五岁时因为生病去看医生,当时病痛使他很难受,医生当时问他,你最想要的是什么,彼得先生对医生说,我想
         要快乐,医生说,那你快乐就是了,结果他真的很快乐。所以彼得先生说,有许多人想追求成功,也有许多人问他,怎样才能尽快地获得成功。他认为,这要先看你对
         成功的定义是什么?你的成功定义若是家庭和谐,那你就应想办法跟家庭成员更多地沟通,为此付出更多的时间,并在提升家庭成员的和谐之中也提升自己处理家庭问
         题的能力。
         彼得先生说:“我对成功的定义是快乐,我不会做我不喜欢的事和不喜欢的工作。中国的一句俗语说‘人在屋檐下,不得不低头‘,我不喜欢那样的境况,我也不会那样
         做。由于我认为快乐就是成功,所以说,我在5岁时就已经很成功了。”
         <a class="hideContent" href="javascript:void(0);">收起全文</a>
      </div>
    </div>
  </body>
</html>

但上面只是静态的,但如果是动态的,成百上千条的数据,这时候就需要用到动态html了。

也就是需要在html页面借助for循环来实现展示效果。(让其产生多个li标签)

那么上面这样写就会有问题。因为这样会让所有的包含class 为content的标签产生影响。所以js代码那块有问题。所以就需要使用id来改变隐藏和显示状态,而不应该用class。

然后又想id怎么自增。但是让其自增了,又怎么获取该标签自增后的id。因为在上面隐藏和展示的代码里面需要获取该id,之后就不会写了。。。不会js,需要学一下。

另外附上可以让其产生这种效果的css代码:

像这种加了省略号,加了个阅读全文是怎么做到的

p {
            width:600px;
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            /*-webkit-line-clamp: 3;超出3行部分显示省略号,去掉该属性 显示全部*/
            line-height: 1.5em;
            height:4.5em;
            overflow-y: hidden;
            -webkit-box-orient: vertical;
        }

还有别的方法控制,用js控制应该也可以,待后期学到一定程度,实现一下这个功能。

原文地址:https://www.cnblogs.com/zhf123/p/11583633.html

时间: 2024-11-10 14:12:22

怎么在html动态实现显示和隐藏效果的相关文章

jquery实现的div的显示和隐藏效果

jquery实现的div的显示和隐藏效果:在网页的实际应用中,有些模块需要根据需要显示或者隐藏,下面就提供了几个这方面的实例,代码非常的简单,都是使用jquery自带的函数实现的,代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>div隐藏显示效果</title> <style type="text/css&qu

js密码修改显示与隐藏效果

一.添加input框 <form class="login_form"> <input class="password inputpwd" id="oldpwd" name="oldpwd" type="password" placeholder="请输入旧密码" /> <div class="invisible" onclick=&qu

动画效果 View控件的显示和隐藏效果

显示动画: mShowAction = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 1.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f); mShowAction.setDuration(500); 隐藏动画: mHiddenAction = new TranslateAnima

js实例之制作多个下拉子菜单,实现下拉菜单显示和隐藏效果

1 <head> 2 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 3 <title>无标题文档</title> 4 <style type="text/css"> 5 *{margin:0px auto;padding:0px;} 6 #menu{width:800px;height:40px

封装一个tab思想方法实现点击的时候显示或隐藏效果

代码实现: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> tab方法 </TITLE> <meta charset="utf-8" /> <script src="jquery-1.11.3.min.js"></script> &

js鼠标滑动图片显示隐藏效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <!--声明当前页面的编码集charset=gbk中文编码gb2312,charset=utf-8国际编码--> <meta http-equi

Jquery实现显示和隐藏的4种简单方式

显示和隐藏的效果想必大家都有见到过吧,其实很简单,通过jquery便可轻松实现,下面为大家整理了4种方式,大家可以根据需求自由选择 Html代码: <div class="topicList"> <h3><span>学习天地</span></h3> <ul> <li>1111111111</li> <li>2222222222</li> <li>33333

js简单显示和隐藏div,触发超链接,动态更改button值,setInterval()简单使用,jquery easyui弹出框简单使用 .

js简单显示和隐藏div 01.<!DOCTYPE html> 02.<html> 03.<head> 04.<meta charset="UTF-8"> 05.<title>Insert title here</title> 06.<script type="text/javascript"> 07. window.onload=function(){ 08. document.g

输入框密码切换显示或隐藏功能的实现

在一些网站或web app登陆的时候输入密码时有一个显示或者隐藏密码字符的开关,个人想到实现方法应当是js动态修改input标签的type属性,当type为text的时候会显示密码内容,而type为password的时候则会显示为圆点或者星号等,以下是demo: html: 1 <input type="password" id="pwd"> 2 <button id="clc">click</button>