您的位置:首页 > 其它

ionic开发中,键盘弹出遮挡div内元素的解决方案

2017-04-05 15:48 1371 查看
采用ionic 开发中,遇到键盘弹出遮挡元素的问题。

以登陆页面为例,输入用户名和密码时,键盘遮挡了登陆按钮。

最终采用自定义指令解决了问题:

.directive('popupKeyBoardShow', [function ($rootScope, $ionicPlatform, $timeout, $ionicHistory, $cordovaKeyboard) {
return {
link: function (scope, element, attributes) {
window.addEventListener('native.keyboardshow', function (e) {
angular.element(element).parent().parent().css({
'margin-top': '-' + 80 + 'px'   //这里80可以根据页面设计,自行修改
})
})

window.addEventListener('native.keyboardhide', function (e) {
angular.element(element).parent().parent().css({
'margin-top': 0
})
})
}
}
}]);

在包含用户名,密码和登陆按钮的div 或者 form 元素中直接使用 

popup-key-board-show

指令,就能使键盘弹出式,div 自动上移,把loginButton 显示出来
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息