uiwebview 编辑html5,ios – 在UIWebView中的contentEditable/designMode时自动滚动

经过几个小时的研究,我找到了一个更好的解决方案,所以我以为我会分享.

在iOS 5的contentEditable实现中有一个bug,其中scrollView不会用插入符滚动.如果使body body(或任何动态大小的元素)contentEditable,插入符号将始终关闭屏幕.

如果将可编辑的div设置为overflow:滚动,则会注意到div将滚动.默认情况下,div的滚动不会“反弹”或滚动条,但可以将-webkit-overflow-scrolling:touch属性应用于div来修复此问题.

有了这些信息,你可以用一个包装器来修复它:

html, body {height: 100%;}

body {

margin: 0;

}

#wrap {

height: 100%;

width: 100%;

overflow-y: scroll;

-webkit-overflow-scrolling: touch;

}

#editor {

padding: 10px;

}

基本上您正在滚动div而不是文档.

不幸的是,div的“scrollView”不知道虚拟键盘,所以插入符号将在键盘后面消失.但是,您会发现插入符号位置仍在键盘底部的屏幕上.所以要解决这个问题,减少div / UIWebView的高度来容纳键盘.

您可能想要做的其他事情是禁用在scrollView上滚动:

webView.scrollView.scrollEnabled = NO;

主要的scrollView不应该滚动,但它应该防止任何滚动毛刺.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值