about window.pageYOffset,document.body.scrollTop not working in iOS 7


最近在升级应用支持iOS7时,发现了一个长期以来都存在的bug。

针对UIWebView 内部实现的UIScrollViewDelegate委托,我们在开发过程中,经常会直接继承UIWebView,并且OverWrite 他的UIScrollViewDelegate。

#pragma mark - UIScrollViewDelegate
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
   //TODO
  }

这样的写法在使用iOS6 SDK 以及iOS6 以下编译都没有出现过问题。但是最近在使用iOS7 SDK编译后,发现在UIWebView脚本调用的时候,window.pageYOffset,document.body.scrollTop 等属性失效,刚开始一直认为是iOS7 是不是针对UIWebView 的 Safari做了什么特殊处理,后来还google了好长一段时间,还发现了一些跟我出现相同问题的coder。

http://stackoverflow.com/questions/19001892/window-pageyoffset-not-working-in-ios7

某些时候,我还一直以为是iOS7的bug。后来分析了线上的几款应用,发现别人是正常的。XX。。那肯定是应用本身的问题。

后来当把注意力转移到UIWebView本身时候,才发现,在开发过程中,经常的去继承,但是并没有注意到父类本身委托的实现。


该bug的解决,只需要。。


#pragma mark - UIScrollViewDelegate

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    [super scrollViewDidScroll:scrollView];
}


好吧。。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值