在开发jQuery页面时,经常发现idangerous swiper莫名奇妙的就不工作了,
问题
当页面的大小发生变化后,很有可能会影响到swipe的功能,比如下面的场景会导致
1.假设第一个页面包含一个可以上、下滚动的swiper,并且,这时浏览器的地址栏处于显示状态
2.将页面跳转到第二个页面,这时浏览器的地址栏自动消失(注意:这时浏览器的高度将发生变化)
3.最后,返回第一个页面时,第一个页面中的swiper将停止工作(拖拽和api调用都不能切换页面)
* 如果浏览器尺寸发生变化时,第一页面还处于显示状态,就不会出现上面的情况
产生原因
在第一个页面处理“隐藏”状态时,浏览器改变大小会导致swiper得到错误的页面大小:0x0,这也就导致了swiper不能正确计算出需要显示的页面的正确位置。
解决办法
在重新显示第一页时,通过调用swiper.resizeFix()方法,通知swiper需要重新计算页面尺寸。
本文探讨了idangerousswiper在页面尺寸变化时遇到的问题,特别是在浏览器地址栏显示或隐藏导致的swiper功能失效现象。文章分析了问题产生的原因,并提供了解决方案,即通过调用swiper.resizeFix()来重新计算页面尺寸。
4917

被折叠的 条评论
为什么被折叠?



