gpt4 book ai didi

javascript - Jquery按钮单击以从右到左显示带有幻灯片动画的div

转载 作者:太空宇宙 更新时间:2023-11-04 11:56:18 25 4
gpt4 key购买 nike

我有一个关于点击显示从右到左 div 的问题。

这是我的 DEMO 来自 jsfiddle 的页面。

在此演示中,您可以看到红色背景颜色的 div(单击以显示信息)。当您单击此 div 时,信息 div 将打开。但它不适用于左侧。

如何让它从右到左打开?任何人都可以在这方面帮助我

JS

$(".clickshowinfo").click(function(){
var id = $(this).data("id");
$(".user-info").fadeIn().find(".user-info-in").animate({"right":0}, 200);
});

$(".user-info").click(function(){
$(".user-info-in").animate({"right":"-200px"},200,function(){
$(".user-info").fadeOut();
})

});

$(".cc").click(function(e){
e.stopPropagation();

});

CSS

body{
background-color:#000;
}
.clickshowinfo{
margin:0px auto;
width:150px;
margin-top:10px;
cursor:pointer;
background-color:Red;
}
.global-message-container {
display: block;
position: absolute;
height: auto;
bottom: 0;
top: 0;
left: 0;
right: 0;
max-width: 980px;
min-width:300px;
margin-top: 80px;
margin-bottom: 20px;
margin-right: auto;
margin-left: auto;
background-color: #ffffff;
box-shadow: 0 1px 1px 0 rgba(0,0,0,.06),0 2px 5px 0 rgba(0,0,0,.2);
-webkit-box-shadow: rgba(0, 0, 0, 0.0588235) 0px 1px 1px 0px, rgba(0, 0, 0, 0.2) 0px 2px 5px 0px;
border-radius: 3px;
-webkit-border-radius: 3px;
-o-border-radius: 3px;
-moz-border-radius: 3px;
min-height: 140px;
}
.chat-list-container {
display: block;
position: absolute;
float: left;
width: 30%;
overflow: hidden;
padding: 0px;
bottom: 0;
top: 0;
left: 0;
background-color: #ffffff;
border-right: 1px solid #d8dbdf;
-webkit-border-top-left-radius: 3px;
-webkit-border-bottom-left-radius: 3px;
-moz-border-radius-topleft: 3px;
-moz-border-radius-bottomleft: 3px;
border-top-left-radius: 3px;
border-bottom-left-radius: 3px;
transition: opacity 2s, width 2s, left 2s, font-size 2s, color 2s;
}
.chat-container {
display: block;
position: absolute;
width: 70%;
bottom: 0;
top: 0;
right: 0;
background-color: #f7f9fa;
-webkit-border-top-right-radius: 3px;
-webkit-border-bottom-right-radius: 3px;
-moz-border-radius-topright: 3px;
-moz-border-radius-bottomright: 3px;
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
}
@media all and (max-width: 640px){
.chat-list-container {
display:none;
}
.secret{
float:left;
display:block;
}
.chat-container{
width:100%;
}
}
.user-info {
display:none;
transform: translateX(0px);
right: 0!important;
left: auto;
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
right: auto;
z-index: 1000!important;
-webkit-align-self: auto!important;
-ms-flex-item-align: auto!important;
align-self: auto!important;
height: 100%;
overflow: hidden;
position: absolute;
width: 30%;
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
outline: none;
background-color:#dddddd;

}
.user-info-in{
background-color: #dddddd;
width: 100%;
top: 0;
z-index: 1000;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
height: 100%;
overflow: hidden;
position: absolute;
left: 0;
}
.cc{
background-color:blue;
}

最佳答案

如果我没听错,您想要一个向左滑动的菜单。

我改变了什么:

  1. 我改变了动画。我个人更喜欢动画窗口的宽度。有很多不同的方法,但我认为这是比较容易的方法之一。正如您在 jsfiddle 文件中看到的那样,宽度已更改为所需的宽度。


代码:

$(".clickshowinfo").click(function(){
var id = $(this).data("id");
$(".user-info").animate({width:"30%"}, 200).find(".user-info-in").animate({width:"100%"}, 200);
});
$(".user-info").click(function(){
$(".user-info-in").animate({width:"0%"},200);
$(".user-info").animate({width:"0%"},200);
});

代码准确显示宽度动画只需点击演示链接

  1. CSS 现在需要宽度:0;这样你就再也看不到div了。
  2. 显示:无;必须删除,否则即使您更改宽度,div 也会一直不可见。
  3. 菜单 div 上的 Right 属性必须为 0 (Right:0;)

div 现在是“不可见的”,因为它没有宽度,但是一旦您单击按钮,它就会获得一个宽度,并且它会将自己推离左墙,从而创建所需的动画。

希望对你有帮助。如果您需要更多解释或想要其他内容,请发表评论。

Demo

关于javascript - Jquery按钮单击以从右到左显示带有幻灯片动画的div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30198386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com