我正在使用Angular Material。
首先,在桌面浏览器上,一切正常。
但是在智能手机(或带有Chrome中的开发人员工具)上,当您在mousedown
上将光标移动一个像素时,不会触发按钮的(单击)事件。
我想这不仅是故意的,而且是故意的, 与移动设备上的滚动有关, 尽管材料按钮的波纹效果对我来说有点奇怪。
当我执行mousedown
时,显示了涟漪,看起来像是单击按钮起作用了,但是由于移动,单击实际上并未触发事件。
在角材料站点的许多示例页面上都可以轻松测试。 我只是将Stackblitz链接到小吃店示例。
https://stackblitz.com/angular/kryggamvlaa?file=app%2Fsnack-bar-overview-example.ts
只需切换到开发人员工具并选择移动设备。
然后点击显示小吃栏按钮,然后向左移动1个像素。
如果mousedown
和mouseup
位于按钮内,我认为它应该触发事件。
强制这种行为的最佳方法是什么?我应该只使用touchStart
吗?
答案 0 :(得分:0)
仅供参考。
我最终使用touchStart并在我的应用程序中禁用了波纹效果。 就我而言,对于某些按钮而言,这感觉更平滑。
正如问题中提到的,我想这种行为是有意的。 我只是想知道是否有更好的方法来处理这个“问题”。