首页 > 代码库 > js之展开与收起效果

js之展开与收起效果

  1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2 <html xmlns="http://www.w3.org/1999/xhtml">
  3 <head>
  4     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5     <title>鼠标控制动画展开</title>
  6     <style type="text/css">
  7         body
  8         {
  9             margin: 0 auto;
 10             padding: 0;
 11             font-size: 9pt;
 12             line-height: 180%;
 13         }
 14         
 15         #pn
 16         {
 17             background: #f8f8f8;
 18             height: auto;
 19             width: 750px;
 20             display: block;
 21             margin: 0 auto;
 22             padding: 5px;
 23         }
 24         
 25         
 26         .btn
 27         {
 28             width: 80px;
 29             height: 20px;
 30             padding: 5px 3px 5px 3px;
 31             text-align: center;
 32             text-decoration: none;
 33             background: #f0f0f0;
 34             border: 1px solid #CCC;
 35         }
 36         .content
 37         {
 38             border: 1px solid #CCC;
 39             display: none;
 40             padding: 5px;
 41         }
 42         .title
 43         {
 44             font-weight: bold;
 45             color: #3030FF;
 46             font-size:11pt;
 47         }
 48         .subtitle
 49         {
 50             color: #CCC;
 51         }
 52         .btm
 53         {
 54             text-align: right;
 55             height: 30px;
 56         }
 57     </style>
 58     <script type="text/javascript">
 59        
 60         function showdiv(obj) {
 61 
 62             //obj.parentNode.nextSibling.nextSibling.style.display = "block";
 63             var x = obj.parentNode; //摘要
 64             var y=x.nextSibling;  //正文
 65             //包含众多空格作为文本节点,因此在我们使用nextSibling和previousSibling时就会出现问题。
 66             //因为FireFox会把文本节点误当做元素节点的兄弟节点来处理。我们可以添加nodeType来判断。
 67             //当上一节点或者是下一节点为文本节点时,就继续寻找,直到找到下一个元素节点。
 68             //  其中nodeType的值主要有以下几种:
 69             // 
 70             // 元素节点的nodeType值为1
 71             // 属性节点的nodeType值为2
 72             // 文本节点的nodeType值为3
 73              if (y.nodeType != 1) {
 74                 y = y.nextSibling;   //如果不是元素节点,继续查找
 75             }
 76              x.style.display = "none";
 77             y.style.display = "block";  //让正文显示
 78            
 79 
 80         }
 81         function hidediv(obj) {
 82             var y=obj.parentNode.parentNode; //正文
 83             var x = y.previousSibling;  //摘要
 84            if (x.nodeType != 1) {
 85                 x= x.previousSibling;
 86             }
 87             
 88             x.style.display = "block";
 89             y.style.display="none";
 90         }
 91         
 92     </script>
 93 </head>
 94 <body>
 95     <div id="pn">
 96         <div>
 97             <p class="title">
 98                 Slack:团队日常沟通协作工具典范</p>
 99             <p class="subtitle">
100                 作者:来自网络 发表时间:2014-3-1 </p>
101             <p>
102                 现在可以在Slack.com上申请成为试用用户,这是一个面对企业、团队的协作工具,似乎需要试用企业域名后缀的邮箱。 Slack从目前看,基本符合我对团队沟通工具的完全要求。特点如下:
103                 在所有端都可以进行,即桌面端,包括Mac OS和Windows系统;web端即浏览器;移动端的支持包括iOS和Android。 同时,移动端是有良好体验以满足移动办公便利性的。
104                 聚焦核心行为,即"发布一条信息",团队成员只需要做一个这个基本行为即可。 发布一条...<a onclick="showdiv(this);" href="#">全文</a>
105             </p>
106             <div class="content">
107                 <p>
108                     现在可以在Slack.com上申请成为试用用户,这是一个面对企业、团队的协作工具,似乎需要试用企业域名后缀的邮箱。 Slack从目前看,基本符合我对团队沟通工具的完全要求。特点如下:</p>
109                 <p>
110                     在所有端都可以进行,即桌面端,包括Mac OS和Windows系统;web端即浏览器;移动端的支持包括iOS和Android。</p>
111                 <p>
112                     同时,移动端是有良好体验以满足移动办公便利性的。</p>
113                 <p>
114                     聚焦核心行为,即“发布一条信息”,团队成员只需要做一个这个基本行为即可。</p>
115                 <p>
116                     发布一条信息这个行为可以扩展成为该信息是一个图片或者一个文件等,以便协作更好进行,如果文件能快速预览则更好。</p>
117                 <p>
118                     支持@方式直接和单个团队成员沟通,并且能够被其他成员看到和参与进来。</p>
119                 <p>
120                     以#来进行快速形成话题组或者项目组。</p>
121                 <p>
122                     良好的搜索支持。 上述虽然是Slack的特性,也是我对团队日常协作工具的要求——显然,Slack完全符合这些要求,而且产品做得很易用。这些要求其实就是我对“移动、社交、云端存储”的理解,这三个因素基本会重写很多软件和应用。</p>
123                 <p>
124                     Slack有免费的lite版本,但收费版本似乎价格对中文用户而言略高。</p>
125                 <p>
126                     Slack由我很喜欢的项目Flickr的创始人新公司TinySpeck创办,因此基础甚好。而且从目前看,基本上会成为一个很成功的应用,所以在产品持续发展上面应该毫无问题。</p>
127                 <p>
128                     The post Slack:团队日常沟通协作工具典范 appeared first on 游山打猎.</p>
129                 <div class="btm">
130                     <a href="#" class="btn" onclick="hidediv(this);">收起全文</a></div>
131             </div>
132         </div>
133         <hr />
134         <div>
135             <p class="title">
136                 Slack:团队日常沟通协作工具典范</p>
137             <p class="subtitle">
138                 作者:来自网络 发表时间:2014-3-1 </p>
139             <p>
140                 现在可以在Slack.com上申请成为试用用户,这是一个面对企业、团队的协作工具,似乎需要试用企业域名后缀的邮箱。 Slack从目前看,基本符合我对团队沟通工具的完全要求。特点如下:
141                 在所有端都可以进行,即桌面端,包括Mac OS和Windows系统;web端即浏览器;移动端的支持包括iOS和Android。 同时,移动端是有良好体验以满足移动办公便利性的。
142                 聚焦核心行为,即"发布一条信息",团队成员只需要做一个这个基本行为即可。 发布一条...<a onclick="showdiv(this);" href="#">全文</a>
143             </p>
144             <div class="content">
145                 <p>
146                     现在可以在Slack.com上申请成为试用用户,这是一个面对企业、团队的协作工具,似乎需要试用企业域名后缀的邮箱。 Slack从目前看,基本符合我对团队沟通工具的完全要求。特点如下:</p>
147                 <p>
148                     在所有端都可以进行,即桌面端,包括Mac OS和Windows系统;web端即浏览器;移动端的支持包括iOS和Android。</p>
149                 <p>
150                     同时,移动端是有良好体验以满足移动办公便利性的。</p>
151                 <p>
152                     聚焦核心行为,即“发布一条信息”,团队成员只需要做一个这个基本行为即可。</p>
153                 <p>
154                     发布一条信息这个行为可以扩展成为该信息是一个图片或者一个文件等,以便协作更好进行,如果文件能快速预览则更好。</p>
155                 <p>
156                     支持@方式直接和单个团队成员沟通,并且能够被其他成员看到和参与进来。</p>
157                 <p>
158                     以#来进行快速形成话题组或者项目组。</p>
159                 <p>
160                     良好的搜索支持。 上述虽然是Slack的特性,也是我对团队日常协作工具的要求——显然,Slack完全符合这些要求,而且产品做得很易用。这些要求其实就是我对“移动、社交、云端存储”的理解,这三个因素基本会重写很多软件和应用。</p>
161                 <p>
162                     Slack有免费的lite版本,但收费版本似乎价格对中文用户而言略高。</p>
163                 <p>
164                     Slack由我很喜欢的项目Flickr的创始人新公司TinySpeck创办,因此基础甚好。而且从目前看,基本上会成为一个很成功的应用,所以在产品持续发展上面应该毫无问题。</p>
165                 <p>
166                     The post Slack:团队日常沟通协作工具典范 appeared first on 游山打猎.</p>
167                 <div class="btm">
168                     <a href="#" class="btn" onclick="hidediv(this);">收起全文</a></div>
169             </div>
170         </div>
171         <hr /><div>
172             <p class="title">
173                 Slack:团队日常沟通协作工具典范</p>
174             <p class="subtitle">
175                 作者:来自网络 发表时间:2014-3-1 </p>
176             <p>
177                 现在可以在Slack.com上申请成为试用用户,这是一个面对企业、团队的协作工具,似乎需要试用企业域名后缀的邮箱。 Slack从目前看,基本符合我对团队沟通工具的完全要求。特点如下:
178                 在所有端都可以进行,即桌面端,包括Mac OS和Windows系统;web端即浏览器;移动端的支持包括iOS和Android。 同时,移动端是有良好体验以满足移动办公便利性的。
179                 聚焦核心行为,即"发布一条信息",团队成员只需要做一个这个基本行为即可。 发布一条...<a onclick="showdiv(this);" href="#">全文</a>
180             </p>
181             <div class="content">
182                 <p>
183                     现在可以在Slack.com上申请成为试用用户,这是一个面对企业、团队的协作工具,似乎需要试用企业域名后缀的邮箱。 Slack从目前看,基本符合我对团队沟通工具的完全要求。特点如下:</p>
184                 <p>
185                     在所有端都可以进行,即桌面端,包括Mac OS和Windows系统;web端即浏览器;移动端的支持包括iOS和Android。</p>
186                 <p>
187                     同时,移动端是有良好体验以满足移动办公便利性的。</p>
188                 <p>
189                     聚焦核心行为,即“发布一条信息”,团队成员只需要做一个这个基本行为即可。</p>
190                 <p>
191                     发布一条信息这个行为可以扩展成为该信息是一个图片或者一个文件等,以便协作更好进行,如果文件能快速预览则更好。</p>
192                 <p>
193                     支持@方式直接和单个团队成员沟通,并且能够被其他成员看到和参与进来。</p>
194                 <p>
195                     以#来进行快速形成话题组或者项目组。</p>
196                 <p>
197                     良好的搜索支持。 上述虽然是Slack的特性,也是我对团队日常协作工具的要求——显然,Slack完全符合这些要求,而且产品做得很易用。这些要求其实就是我对“移动、社交、云端存储”的理解,这三个因素基本会重写很多软件和应用。</p>
198                 <p>
199                     Slack有免费的lite版本,但收费版本似乎价格对中文用户而言略高。</p>
200                 <p>
201                     Slack由我很喜欢的项目Flickr的创始人新公司TinySpeck创办,因此基础甚好。而且从目前看,基本上会成为一个很成功的应用,所以在产品持续发展上面应该毫无问题。</p>
202                 <p>
203                     The post Slack:团队日常沟通协作工具典范 appeared first on 游山打猎.</p>
204                 <div class="btm">
205                     <a href="#" class="btn" onclick="hidediv(this);">收起全文</a></div>
206             </div>
207         </div>
208         <hr />
209         </div>
210     </div>
211 </body>
212 </html>

效果图:

技术分享

 

js之展开与收起效果