我将onClick和onBlur传递给div,但它无法正常工作。 onBlur事件不会每次都发生。我在这里使用反应包Draft-js。
<div className="form-group" id="task-comments-frm">
<div>
<div onClick={this.CommentBoxClick.bind(this,'click')} onBlur={this.CommentBoxClick.bind(this,'blur')}>
<DraftEditor comment={this.state.newComment} handleCommentChange={this.handleCommentChange.bind(this)} />
</div>
<div className="pull-right text-right send-comments">
<button className="btn btn-primary" disabled={(this.state.newComment) ? "" : "disabled"} onClick={this.handleAddComment.bind(this)}>Send</button>
</div>
</div>
</div>
这是我的功能。我正在尝试用状态改变课程。
CommentBoxClick(index){
if(index == 'click'){
this.setState({ addCommentBox : 'task-comments animated', CommentBoxHeight : '125px'})
}else if(index == 'blur'){
setTimeout(function() { this.setState({addCommentBox :'task-comments', CommentBoxHeight : '40px'}); }.bind(this), 200);
}
}