【发布时间】:2017-03-06 16:35:51
【问题描述】:
我想要一个显示“显示更多”的链接,单击该链接会扩展另一个 div 的高度以显示所有内容。一旦 div 显示所有内容,我希望链接更改为“显示更少”,并在被点击后执行相反的操作。
这是我目前所拥有的,但由于某种原因它不起作用,请有人帮忙吗?
这是我目前所拥有的:
$(document).ready(function() {
$('.entry-content').css('height', '400px');
$('.entry-content').css('overflow', 'hidden');
$('.show-more').click(function() {
$('.entry-content').animate({
'height': 'auto'
}, 500);
$('.show_more').html('Show Less');
$('.show_more').addClass('show_less');
$('.show_more').removeClass('show_more');
});
$('.show-less').click(function() {
$('.entry-content').animate({
'height': '400px'
}, 500);
$('.show_less').html('Show More');
$('.show_less').addClass('show_more');
$('.show_less').removeClass('show_less');
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="entry-content">
Curabitur sed enim sit amet nibh vulputate efficitur nec eget nulla. Vestibulum vel pulvinar magna. Etiam viverra vulputate lectus. Etiam dictum maximus ligula sed efficitur. Donec in dictum purus. Sed consequat quam eu eleifend convallis. Donec sapien
augue, volutpat ac nibh ac, molestie vulputate neque. Morbi eu fermentum est, eget vulputate quam. Phasellus et ante ipsum. Nullam tempus neque augue, nec accumsan erat hendrerit vel. Proin dolor sapien, pulvinar at rutrum quis, scelerisque vel ipsum.
Cras arcu nulla, placerat ac arcu vitae, iaculis maximus nisi. Nulla tincidunt, nisi id ultrices tempor, diam ipsum sollicitudin neque, ac consequat libero nulla eu diam.
</div>
<div class="another-div-elsewhere">
<a href="#" class="show-more">Show More</a>
</div>
【问题讨论】:
-
你错过了
#show-less- 看起来你正试图更多/更少地切换显示,但代码假定有两个按钮。 -
您需要在 $.ready 中包含 show-more 和 show-less click 事件
-
您需要将这些点击包含在
$(document).ready(function(){)};中 -
我已经在文档就绪函数中移动了点击函数,但遗憾的是这也不起作用:(我在某处读到 $() 应该替换为 jQuery() 是真的吗?跨度>
标签: javascript jquery html css jquery-animate