React底部用fixed输入框输入时,安卓手机中fixed层跟着输入法上移,需要隐藏fixed层

import  React from  'react'
import  {List,WhiteSpace,Toast} from 'antd-mobile';
import { createForm } from 'rc-form';
import {bindActionCreators} from 'redux';
import {connect} from "react-redux";


class confirmOrder extends React.Component{
     constructor(props){
         super(props)
         this.resize=this.resize.bind(this);
         this.state={
            bodyHeight:document.documentElement.clientHeight||document.body.scrollHeight
         }
     }
     componentWillMount() {
         window.addEventListener('resize',this.resize);
     }
  
    resize(){
        if(util.isAndroid()){
            if (document.body.scrollHeight < this.state.bodyHeight) {
                this.setState({
                    displayBtn:false
                })
            }else{
                this.setState({
                    displayBtn:true
                })
            }
        }
    }
   componentWillUnmount() {
          window.removeEventListener('resize',this.resize)
    }
    
    render() {
         
        return(
             <div>
                 {
                     this.state.displayBtn? <div className="addorder_pay" >
                         <div className="addorder_price" style={{padding:"0.5rem 1rem"}}>
                             <ul>
                                 <li>商品金额:<span>&yen;{productPrice}</span></li>
                                 {
                                     this.state.displayCountPrice?codePrice.data&&codePrice.data.codeprice?<li>优惠价格:<span>&yen;{codePrice.data.codeprice}</span></li>:"":""
                                 }

                             </ul>
                         </div>
                         <div className="btnArea" style={{paddingTop:"0.5rem"}}>
                             <div className="btn" onClick={this.submitOrder.bind(this)}>提交订单</div>
                         </div>
                     </div>:''

                 }
             </div>
    
         )
     }
}

export default confirmOrder


判断是androis还是iphone

export  function  isIOS() {
    let u = window.navigator.userAgent;
    let isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
    return  isiOS
}
export  function isAndroid(){
    let u = window.navigator.userAgent;
    let isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
    return  isAndroid
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值