html 收起展开文字,jq 固定高度文字展开收起

直接在p外层包上一层,外层overflow隐藏,获取p的高度设置即可;

注意p的默认margin,下面例子用父元素的padding抵消;

Title

.text{

line-height: 1.8;

margin:0 auto;

width: 500px;

}

.text .desc{

height:50px;

padding: 20px 0;

overflow: hidden;

}

.iconfont{

width: 100%;

font-size: 20px;

text-align: center;

cursor: pointer;

}

目木家居旗舰店,专注家居二十年。我们彰显个性,具有浓郁现代感现代风格家居设计的特色是,其设计的元素、材料都很单一,这种设计风格已经成为越来越多时尚潮人装修的首选,现代风格家居设计从整体到局部、从空间到室内陈设塑造,精雕细琢,给人一丝不苟的印象目木家居旗舰店,专注家居二十年。我们彰显个性,具有浓郁现代感现代风格家居设计的特色是,其设计的元素、材料都很单一,这种设计风格已经成为越来越多时尚潮人装修的首选,现代风格家居设计从整体到局部、从空间到室内陈设塑造,精雕细琢,给人一丝不苟的印象目木家居旗舰店,专注家居二十年。我们彰显个性,具有浓郁现代感现代风格家居设计的特色是,其设计的元素、材料都很单一,这种设计风格已经成为越来越多时尚潮人装修的首选,现代风格家居设计从整体到局部、从空间到室内陈设塑造,精雕细琢,给人一丝不苟的印象目木家居旗舰店,专注家居二十年。我们彰显个性,具有浓郁现代感现代风格家居设计的特色是,其设计的元素、材料都很单一,这种设计风格已经成为越来越多时尚潮人装修的首选,现代风格家居设计从整体到局部、从空间到室内陈设塑造,精雕细琢,给人一丝不苟的印象

$(document).ready(function() {

$(".text").off('click').on('click','.icon-unfold', function () {

$(".desc").animate({height: $('.desc-content').height()}, "slow");

$(this).removeClass('icon-unfold icon-fold').addClass('icon-fold');

}).on('click','.icon-fold', function () {

$(".desc").animate({height: '50px'}, "normal");

$(this).removeClass('icon-fold icon-unfold').addClass('icon-unfold');

});

})

bVPY0d?w=595&h=137

bVPY0n?w=603&h=507

可以先选中所有需要展开收起的元素,然后对每个元素分别绑定事件,实现展开收起的效果。具体实现过程如下: 1. 给需要展开收起的元素添加一个共同的 class,比如 `expandable`。 2. 使用 jQuery 选中所有的 `.expandable` 元素,然后对每个元素分别绑定事件。 3. 在事件中使用 `slideToggle()` 方法实现展开收起的效果。 示例代码如下: ```html <!DOCTYPE html> <html> <head> <title>一个页面中有多个展开收起jq怎么实现</title> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <style> .expandable { padding: 10px; background-color: #eee; cursor: pointer; margin-bottom: 10px; } .expandable-content { display: none; padding: 10px; background-color: #fff; } </style> </head> <body> <div class="expandable"> <h3>标题1</h3> <div class="expandable-content"> <p>内容1</p> </div> </div> <div class="expandable"> <h3>标题2</h3> <div class="expandable-content"> <p>内容2</p> </div> </div> <div class="expandable"> <h3>标题3</h3> <div class="expandable-content"> <p>内容3</p> </div> </div> <script> $(document).ready(function() { $('.expandable').each(function() { $(this).click(function() { $(this).find('.expandable-content').slideToggle(); }); }); }); </script> </body> </html> ``` 在上述代码中,我们首先给需要展开收起的元素添加了 `.expandable` 这个 class,然后使用 jQuery 选中所有的 `.expandable` 元素,并对每个元素分别绑定了点击事件。在点击事件中,我们使用 `slideToggle()` 方法来实现展开收起的效果。 注意,这里使用了 `each()` 方法对每个 `.expandable` 元素进行遍历,因为这样可以确保每个元素都被绑定了点击事件。如果直接使用 `$('.expandable').click()`,则只会对第一个元素绑定事件,其他元素则无法响应点击事件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值