Jquery 反馈表从底部滑入,位置:绝对
我想在页面底部打开一张反馈表,上面有一个“绝对”位置 问题是div进入可见页面下并创建一个滚动条。 有没有一种方法可以让它在不进入屏幕边框的情况下也这样做 此外,单击反馈后,应将其更改为“关闭”,以便将其关闭并从头开始重新启动 这是我的密码:Jquery 反馈表从底部滑入,位置:绝对,jquery,css,Jquery,Css,我想在页面底部打开一张反馈表,上面有一个“绝对”位置 问题是div进入可见页面下并创建一个滚动条。 有没有一种方法可以让它在不进入屏幕边框的情况下也这样做 此外,单击反馈后,应将其更改为“关闭”,以便将其关闭并从头开始重新启动 这是我的密码: <div id="feedback"> <div id="feedback_slide">Feedback</div> <div id="contents"> content here
<div id="feedback">
<div id="feedback_slide">Feedback</div>
<div id="contents">
content here
</div>
</div>
$(document).ready(function() {
$('#feedback').click(function(){
$(this).stop().animate({ bottom: 0 }, 350);
});
//change 'feedback' to 'close'
$('#feedback_slide').click(function(){
$('#feedback').stop().animate({ bottom: -280 }, 350);
});
});
反馈
满足于此
$(文档).ready(函数(){
$(“#反馈”)。单击(函数(){
$(this.stop().animate({bottom:0},350);
});
//将“反馈”更改为“关闭”
$(“#反馈_幻灯片”)。单击(函数(){
$(“#反馈”).stop().animate({bottom:-280},350);
});
});
这是我的
我该怎么做呢?有一种更简单的方法 1.你的立场应该是“固定的”,而不是“绝对的” 当你绝对定位某个东西时,它实际上会将它放在页面中的那个点上,而这不是你想要的。将其放置在固定位置,它将随页面滚动 2.使用
.toggleClass()
要处理打开和关闭的样式,然后仅使用转换持续时间来移动反馈小部件,请执行以下操作:
JS:
CSS:
请注意,单击
#feedback
的任何部分时,这将切换它
如果您只希望#feedback(反馈)幻灯片
触发事件,请将其绑定在那里并调用.parent(#feedback”).toggleClass()
:
编辑: 如果要根据父级的当前类将文本从反馈更改为关闭,可以在
.html()
函数中执行三元检查,如下所示:
$(this).html(($(this).parent("#feedback").hasClass("open") ? "Feedback" : "Close")).parent("#feedback").toggleClass("open");
我将在此处将其分解为各个组件:
$(this).html(
($(this).parent("#feedback").hasClass("open") ? "Feedback" : "Close")
).parent("#feedback").toggleClass("open");
因此,如果父级#feedback
具有类.open
,则会将文本更改为“feedback”,如果没有,则会将其更改为“Close”
编辑: 如果有人看这个作为参考,这里是最后一把小提琴,当点击反馈和隐藏溢出时,小提琴的高度会增加:
有一种更简单的方法可以做到这一点 1.你的立场应该是“固定的”,而不是“绝对的” 当你绝对定位某个东西时,它实际上会将它放在页面中的那个点上,而这不是你想要的。将其放置在固定位置,它将随页面滚动 2.使用
.toggleClass()
要处理打开和关闭的样式,然后仅使用转换持续时间来移动反馈小部件,请执行以下操作:
JS:
CSS:
请注意,单击
#feedback
的任何部分时,这将切换它
如果您只希望#feedback(反馈)幻灯片
触发事件,请将其绑定在那里并调用.parent(#feedback”).toggleClass()
:
编辑: 如果要根据父级的当前类将文本从反馈更改为关闭,可以在
.html()
函数中执行三元检查,如下所示:
$(this).html(($(this).parent("#feedback").hasClass("open") ? "Feedback" : "Close")).parent("#feedback").toggleClass("open");
我将在此处将其分解为各个组件:
$(this).html(
($(this).parent("#feedback").hasClass("open") ? "Feedback" : "Close")
).parent("#feedback").toggleClass("open");
因此,如果父级#feedback
具有类.open
,则会将文本更改为“feedback”,如果没有,则会将其更改为“Close”
编辑: 如果有人看这个作为参考,这里是最后一把小提琴,当点击反馈和隐藏溢出时,小提琴的高度会增加:
有一种更简单的方法可以做到这一点 1.你的立场应该是“固定的”,而不是“绝对的” 当你绝对定位某个东西时,它实际上会将它放在页面中的那个点上,而这不是你想要的。将其放置在固定位置,它将随页面滚动 2.使用
.toggleClass()
要处理打开和关闭的样式,然后仅使用转换持续时间来移动反馈小部件,请执行以下操作:
JS:
CSS:
请注意,单击
#feedback
的任何部分时,这将切换它
如果您只希望#feedback(反馈)幻灯片
触发事件,请将其绑定在那里并调用.parent(#feedback”).toggleClass()
:
编辑: 如果要根据父级的当前类将文本从反馈更改为关闭,可以在
.html()
函数中执行三元检查,如下所示:
$(this).html(($(this).parent("#feedback").hasClass("open") ? "Feedback" : "Close")).parent("#feedback").toggleClass("open");
我将在此处将其分解为各个组件:
$(this).html(
($(this).parent("#feedback").hasClass("open") ? "Feedback" : "Close")
).parent("#feedback").toggleClass("open");
因此,如果父级#feedback
具有类.open
,则会将文本更改为“feedback”,如果没有,则会将其更改为“Close”
编辑: 如果有人看这个作为参考,这里是最后一把小提琴,当点击反馈和隐藏溢出时,小提琴的高度会增加:
有一种更简单的方法可以做到这一点 1.你的立场应该是“固定的”,而不是“绝对的” 当你绝对定位某个东西时,它实际上会将它放在页面中的那个点上,而这不是你想要的。将其放置在固定位置,它将随页面滚动 2.使用
.toggleClass()
要处理打开和关闭的样式,然后仅使用转换持续时间来移动反馈小部件,请执行以下操作:
JS:
CSS:
请注意,单击
#feedback
的任何部分时,这将切换它
如果您只希望#feedback(反馈)幻灯片
触发事件,请将其绑定在那里并调用.parent(#feedback”).toggleClass()
:
编辑: 如果要根据父级的当前类将文本从反馈更改为关闭,可以在
.html()
函数中执行三元检查,如下所示:
$(this).html(($(this).parent("#feedback").hasClass("open") ? "Feedback" : "Close")).parent("#feedback").toggleClass("open");
我将在此处将其分解为各个组件:
$(this).html(
($(this).parent("#feedback").hasClass("open") ? "Feedback" : "Close")
).parent("#feedback").toggleClass("open");
因此,如果父级#feedback
具有类.open
,则会将文本更改为“feedback”,如果没有,则会将其更改为“Close”
编辑: 如果有人看这个作为参考,这里是最后一把小提琴,当点击反馈和隐藏溢出时,小提琴的高度会增加:
你的第二个JSFIDLE就是我想要的!P