微信开发中bug的修复和遇到的问题。

今天在微信开发中遇到一个很奇怪的bug,微信的页面第一次加载没有问题,当用户点击页面中链接跳转到新的页面后,在点击微信的返回按钮返回之前的页面之前页面的有些js没有执行,这一块思考了许久不知道问题出在哪里,尝试在safari中没有问题,在安卓的微信环境下也没有这种问题,iphone5没有问题,只有ip6的微信有问题,很惊奇!
首先,锁定问题之后,以为微信调试代码不是很方便,因此先排查自己的代码,看看有哪些地方写的不够严谨,看到事件绑定在在ajax执行之后,是不是ajax请求出现问题了呢,先给ajax设置error处理函数,看看是否是ajax报错了。
一排查,果真发现ajax在点击返回按钮后,直接触发了error函数,这样感觉很奇怪啊,怎么会直接报错了,找下后台的同事帮忙查下接口的问题,看下到底是什么问题,后台的同事,这个接口内部没有加log,因此没发排查,那到底是哪里出了问题呢,感觉很是费解。
后来看到页面刚加载就会发送三个ajax请求,会不会是浏览器不支持同时这么大的请求呢,还是页面中的有些请求已经占用了页面的请求资源,因此将ajax请求嵌套处理,页面中ready后只加载一个ajax,尝试下还是会这样,虽然页面中同时只有这一个请求;
又思考会不会是页面刚加载时,因此阻碍了ajax请求的发出呢,尝试使用

	setTimeOut(ajax, 500);

来延迟500ms发送ajax请求尝试是否解决问题,后来发现问题的确是解决了,这个时候思考,因为只要有延迟就会比所有正常的脚本晚执行,因此修改为1ms是不是可以呢?尝试之后发现可行,但是具体问题时哪里还是没有发现,请有经验的朋友赐教!

原文地址:https://www.cnblogs.com/clearfix/p/4945625.html