CSS-jQuery隐藏/显示div更改高度
这可能是一个noob问题,但我想隐藏p标记(.feedback text)中的内容,而不改变div(.feedback box)的高度CSS-jQuery隐藏/显示div更改高度,jquery,css,height,Jquery,Css,Height,这可能是一个noob问题,但我想隐藏p标记(.feedback text)中的内容,而不改变div(.feedback box)的高度 <div class="feedback-box"> <p class="feedback-text"></p> </div> p标记将有不同长度的文本,但我不希望div-it与它一起上下滑动。div必须保持相同的大小,除非文本比以前大或小 文本发生变化的原因是ajax从数据库中获取不同的反馈条目。
<div class="feedback-box">
<p class="feedback-text"></p>
</div>
p标记将有不同长度的文本,但我不希望div-it与它一起上下滑动。div必须保持相同的大小,除非文本比以前大或小
文本发生变化的原因是ajax从数据库中获取不同的反馈条目。有关更多信息,请参见问题
我希望我已经说清楚了。谢谢
编辑:
请看,我在哪里做测试。正如您所看到的,当p标记被隐藏并再次显示时,反馈框div正在跳转。您可以设置css属性:
visibility:hidden;
这就是您想要的吗?您可以设置css属性:
visibility:hidden;
这就是你想要的吗?只需设置
不透明度的动画即可。这会使元素不可见,但仍然存在:
$('.feedback-text').animate({opacity: 0}, 500);
你的JS代码似乎有点可疑。尝试将其替换为以下内容:
function get_feedbackb() {
$.post({url: 'feedback.php', function(data) {
$('.feedback-text').stop().animate({opacity: 0}, 1000, function() {
$(this).html(data);
$(this).stop().animate({opacity: 1}, 3000);
});
});
setTimeout(get_feedback(), 4000);
});
$(document).ready(function(){
get_feedback();
});
只需设置不透明度的动画即可。这会使元素不可见,但仍然存在:
$('.feedback-text').animate({opacity: 0}, 500);
你的JS代码似乎有点可疑。尝试将其替换为以下内容:
function get_feedbackb() {
$.post({url: 'feedback.php', function(data) {
$('.feedback-text').stop().animate({opacity: 0}, 1000, function() {
$(this).html(data);
$(this).stop().animate({opacity: 1}, 3000);
});
});
setTimeout(get_feedback(), 4000);
});
$(document).ready(function(){
get_feedback();
});
在我看来(我不确定我是否理解),你有三个选择:
- 在父div上设置一个固定的高度,如果它太大,则使用css
overflow-y:auto
滚动
- 使用
可见性:隐藏代码>在孩子身上
- 设置不透明度的动画。它仍然会在那里
在我看来(我不确定我是否理解),您有三个选择:
- 在父div上设置一个固定的高度,如果它太大,则使用css
overflow-y:auto
滚动
- 使用
可见性:隐藏代码>在孩子身上
- 设置不透明度的动画。它仍然会在那里
可能有更好的方法,但请尝试查看此方法
可能有更好的方法,但请尝试查看此方法
不,这只是完全隐藏它和里面的内容:/or设置“不透明度:0”;不,这只是完全隐藏它和里面的内容:/or设置“不透明度:0”;Think Blender找到了我的解决方案,jQuery animate:)谢谢anywayThink Blender找到了我的解决方案,jQuery animate:)谢谢。在您摆弄jQuery一段时间后,您会记住以下这些小事情;)它现在正在播放,它弄乱了不透明度并显示下一个早期反馈:/lollhmm,你如何显示反馈?另外,我会使用
$('.feedback text').stop().animate({opacity:0},500)代码>,因为它在调用时停止上一个动画。也许这至少能解决一些问题,没问题。在您摆弄jQuery一段时间后,您会记住以下这些小事情;)它现在正在播放,它弄乱了不透明度并显示下一个早期反馈:/lollhmm,你如何显示反馈?另外,我会使用$('.feedback text').stop().animate({opacity:0},500)代码>,因为它在调用时停止上一个动画。也许这至少可以解决一些问题。查看后,您会发现一些错误。在动画完成之前不要更改文本。更新文本并重新激活。谢谢,它们是什么bug?它们造成了什么?我看不出它有什么问题。李维,你现在能看一下吗,在我试着按你说的做之后,它似乎在升级:/Hmm。。。它对我有用。。。你看到了什么问题?另外,您使用的浏览器是什么?实际上,请将代码移动到成功位置。除非您得到成功的响应,否则您不会想要设置动画,对吗?查看后,您会遇到一些错误。在动画完成之前不要更改文本。更新文本并重新激活。谢谢,它们是什么bug?它们造成了什么?我看不出它有什么问题。李维,你现在能看一下吗,在我试着按你说的做之后,它似乎在升级:/Hmm。。。它对我有用。。。你看到了什么问题?另外,您使用的浏览器是什么?实际上,请将代码移动到成功位置。除非得到成功的响应,否则你不想制作动画,对吗?