Skip to content

技巧和提示

事件委托和DOM事件

Hammer能够通过设置domEvents: true选项触发DOM事件。这将使您的方法如stopPropagation()可以使用事件委托。Hammer不会解绑已绑定的事件。

尽量避免垂直平移/滑动

垂直平移用于滚动页面,一些(较旧的)浏览器不发送事件,因此Hammer无法识别这些手势。一个选择是提供一种替代方式来执行相同的操作。

在真实设备上测试

有时Hammer只需要一些微调,比如滑动速度或其他一些阈值。此外,为了在较慢的设备上获得更好的性能,您应该尽量保持您的回调函数尽可能简单。像JankFree.org这样的网站有关于如何提高性能的文章。

在Windows Phone上移除点击高亮

在Windows Phone上的IE10和IE11在您点击一个元素时有一个小的点击高亮。添加这个元标签可以移除这个高亮。

html
<meta name="msapplication-tap-highlight" content="no" />

无法选中文本

Hammer设置了属性以改善桌面上的平移体验。通常,桌面浏览器会在您拖动页面时选择文本。user-select CSS属性禁用了这个功能。

如果您关心文本选择而不是桌面体验,您可以简单地从默认设置中移除这个选项。确保您在创建实例之前这样做。

javascript
delete Hammer.defaults.cssProps.userSelect

在点击结束之后,也会触发点击事件

那个点击事件也被称为‘幽灵点击’。我创建了一个小型函数来阻止在touchend之后的点击。它深受Ryan Fioravanti这篇文章的启发。

赣ICP备2023003243号