【发布时间】:2016-06-01 07:06:36
【问题描述】:
有没有一种方法可以让我滑出我的模式?谁能帮我这个?当用户点击 x 按钮时,模态框应该从右向左滑出。
提前致谢!!
.headerContactModal {
background-color: white;
color: #1a66b1;
margin-left: 15px;
height:70px;
width:100%;
padding-top: 20px;
font-weight: 700;
}
.headerContactModalMessage {
padding-left: 20px;
padding-right: 5px;
}
.headerContactModalExit{
z-index: 999;
float: right;
display: inline;
color: $dark_gray;
position: absolute;
top: 5px;
}
.headerContactModalPhone {
font-size: 18px;
padding-right: 10px;
}
.slidein {
animation-duration: 700ms;
animation-name: slidein;
animation-iteration-count: 1;
animation-direction: alternate;
}
@keyframes slidein {
from {
margin-left:100%;
}
to {
margin-left:0%;
}
}
import React, { PropTypes, Component } from 'react';
import classNames from 'classnames';
import Button from '../../../common_ui/leafs/Button';
import GenericTextField from '../../components/GenericTextField';
import Icon from '../../../common_ui/leafs/Icon';
class HeaderContactModal extends Component {
static propTypes = {
phoneNumber: PropTypes.string,
messageText: PropTypes.string
}
static defaultProps = {
phoneNumber: '1-800-CALLUS',
messageText: 'Call us:'
}
render() {
return (
<div className="headerContactModal slidein">
<span className="headerContactModalMessage">{this.props.messageText}</span>
<span className="headerContactModalPhone">{this.props.phoneNumber}</span>
<span onClick={this.props.contractContactUs}><Icon className="fa-close headerContactModalExit"/></span>
</div>
);
}
}
export default HeaderContactModal;
【问题讨论】:
-
你知道如何在反应中设置状态吗?只需有一些模态状态,如
modalIsOpen: true|false并让你的 className 依赖它className={`headerContactModal ${this.state.modalIsOpen ? 'slidein' : 'slideout'}`} -
是的,我知道设置状态。但是滑出的动画呢?
-
只是颠倒关键帧的顺序?
-
${this.state.modalIsOpen ???那不是 jQuery 吗?
标签: css reactjs css-transitions css-animations