`

关于 IOS5 使用 position:fixed 与 scrollTo 共存的 bug

 
阅读更多

  背景描述:ios5 提出了支持 position:fixed ,于是乎大家觉得让浮动的图层固定在屏幕最下方容易多了,赶紧用上吧。可是呢。。。页面上又有好多地方需要用到 scrollTo 控制滚动条移动,尤其是页面刚加载完毕需要让浏览器默认的 url 栏消失,一般都用 scrollTo(0,0) 或 scrollTo(0,1) 之类的。。。当这两者混合时就出现问题了, 浮动的div 虽然是你看到的在最下方,但是实际上这个div 内的触控点全都漂移了.

注意,此 bug 在 iphone5上不存在!应该是 ios6 系统修正了这个bug。

你就可以重现上图的问题,看触屏的位置,那里没有任何内容,但是点击后会看到灰色阴影,点击后 alert 44,这说明 click 44 这个 li 的位置实际上漂移到了那里。

    bug 描述:通过这个 Demo 可以基本确定 bug 的原因——利用 scrollTo 滚屏时,会导致 position:fixed 的图层视图不变,但对应的 DOM 实际响应位置却跟随 滚动条一起移动了,并未进行 fixed 的修正,从而导致了这个bug 的产生。

    解决方案:经过简单测试发现,出现这种 bug 后,只需要用手移动一下屏幕就没问题了,所以尝试在 执行了 scrollTo 后,立刻改变 body 的高度,哪怕是1个像素也可,然后这个世界就清净了

http://my.oschina.net/dyhunter/blog/101307

分享到:
评论

相关推荐

    meteor-scrollto:jquery.scrollTo 包基于 natestrauser 的原始构建,用最新的 2.0 版本打包

    流星滚动 jquery.scrollTo 包基于 natestrauser 的原始构建,与最新的 2.x 版本打包 安装 meteor add johnantoni:meteor-scrollto 如何 谢谢 感谢nate-strauser

    JQ ScrollTo 的使用方法

    **JQ ScrollTo 使用方法详解** 在Web开发中,页面滚动效果经常被用来提升用户体验,尤其是在长页面设计中。jQuery的ScrollTo插件提供了一种简单而强大的方式来实现这样的动画滚动效果。本文将深入探讨JQ ScrollTo的...

    jQuery.scrollTo 2.1.2

    jQuery.scrollTo 是一个强大的jQuery插件,专为网页滚动效果设计,可以实现平滑、动态的页面滚动效果。这个插件的版本是2.1.2,包含了一些示例(DEMO),供开发者参考和学习如何在项目中使用它。下面我们将深入探讨...

    ie11ScrollTo_html5_DEMO_

    总的来说,"ie11ScrollTo_html5_DEMO_"是一个关于如何在IE11中实现HTML5 `scrollTo()`功能的示例项目。通过学习这个DEMO,开发者可以了解到如何处理浏览器兼容性问题,特别是在处理老旧浏览器如IE11时,如何优雅地...

    jquery.scrollTo.js网页滚动插件下载.rar

    《jQuery.scrollTo.js网页滚动插件深度解析》 在网页设计中,流畅的用户交互体验是提升网站品质的关键因素之一。jQuery.scrollTo.js插件正是这样一款工具,它为开发者提供了强大的网页滚动控制功能,使得网页的整体...

    解决IOS端微信H5页面软键盘弹起后页面下方留白的问题

    前言:微信H5项目,ios端出现了软键盘输完隐藏后页面不会回弹,下方会有一大块留白 最近微信和ios都有版本升级,不知道是哪边升级造成的,但是经过...因为这个问题只在iOS端出现所以使用前进行一下判断: fixScroll

    Simple-jQuery.scrollTo:真的,非常简单的 jQuery.scrollTo 函数

    简单的jQuery.scrollTo 真的,非常简单的 jQuery.scrollTo 函数。 10行代码安装: 加载 jQuery 后包含代码。用法:作为 jQuery 实用程序: $ . scrollTo ( to , duration , func ) ;作为 jQuery 原型的扩展: $ ( '...

    scrollTo demo

    由于jQuery的链式调用特性,`.scrollTo()`方法可以与其他jQuery方法结合使用,提高代码的可读性和效率。 **应用场景** - 导航菜单中的锚点链接,点击后平滑滚动到对应内容区域。 - 弹出窗口或模态框中的关闭按钮,...

    View.scrollBy()与View.scrollTo()的使用

    本文将详细探讨`View.scrollBy()`和`View.scrollTo()`这两个方法的使用,以及它们在实际开发中的应用。 `View.scrollBy(x, y)`方法是用来平滑地滚动视图(View)的,它会沿着x轴和y轴方向移动指定的距离。这里的x和...

    jquery-easyui-1.3.4

    Bug combobox: The onLoadSuccess event fires when parsing empty local data. fixed. form: Calling 'reset' method can not reset datebox field. fixed. Improvement mobile: The context menu and double...

    scrollTo和scrollBy Demo演示源码

    在JavaScript中,`scrollTo`和`scrollBy`是用于滚动元素的重要方法,它们在网页交互和用户界面设计中扮演着关键角色。本Demo演示源码将深入展示这两个方法的用法,帮助开发者理解如何有效地控制页面或元素的滚动行为...

    JQUERY SCROLLTO

    JQUERY SCROLLTO 详细说明

    前端项目-jquery-scrollto.zip

    【前端项目-jquery-scrollto.zip】是一个包含前端开发中使用的jQuery插件——jQuery ScrollTo的资源包。这个插件主要用于实现网页中元素的平滑滚动效果,为用户提供更流畅、更舒适的浏览体验。在现代网页设计中,...

    angular-scrollto, 使用选择器滚动到元素的Angular 指令.zip

    angular-scrollto, 使用选择器滚动到元素的Angular 指令 角 scrollto使用选择器滚动到元素的Angular 指令。需要jQuery很快,就会有一个非jQuery版本。安装Bowerbower install angular-scrollto --saveNPM

    jquery.scrollTo-min.js

    jquery的插件scrollTo,网上有很多,这里备份一下

    缓动返回顶部图标代码

    5. **优化与增强**: 为了提高用户体验,还可以考虑在用户滚动一定距离后显示返回顶部按钮,当滚回顶部时自动隐藏。此外,可以加入动画效果,如渐显渐隐,使交互更具吸引力。 总结,实现“缓动返回顶部图标”的...

    使用HTML5和CSS3构建基于webkit的Web-PageApp.doc

    7. 使用touch scroll, demo来模拟iPhone的scroll效果,解决Mobile Safari下不支持position:fixed的问题。 使用HTML5和CSS3构建基于webkit的Web Page/App需要注意许多细节,但它可以提供了一个快速、跨平台、美观的...

    HTML回顶部

    为了让回顶部按钮始终显示在页面右下角,我们可以使用CSS的绝对定位(position: absolute)和固定定位(position: fixed)。例如: ```css #back-to-top { position: fixed; bottom: 20px; right: 20px; width:...

    网页返回顶部代码

    可以使用`position: fixed;`让按钮始终位于屏幕底部,`opacity: 0;`隐藏按钮,`transition`属性用于平滑过渡效果: ```css #topBtn { position: fixed; bottom: 20px; right: 30px; opacity: 0; transition: ...

    锚点导航栏效果

    在CSS方面,为了让导航栏固定在页面右侧,我们可以使用`position: fixed`属性,以及适当的`right`, `top`, `width`等样式属性来调整其位置和外观。例如: ```css .navbar { position: fixed; right: 0; top: 0; ...

Global site tag (gtag.js) - Google Analytics