如果触摸,否则如果点击,否则



有什么方法可以区分触摸和点击吗?"你到底要干嘛?"总是有人认为他们知道每个可能的用例,所以对你来说:

我们有一个多层下拉导航菜单。如果用户使用带有鼠标的普通笔记本电脑,则菜单下拉菜单为:onmouseover。但是,如果他们点击了第一层项目,我们希望他们直接转到某个页面。因此,当用户使用具有触摸功能的笔记本电脑时,问题就出现了。在这种情况下,触摸被视为单击和鼠标悬停。因此,用户将看到菜单下拉菜单,然后直接转到第一层中连接的页面或菜单标题。他们永远无法选择第二层或第三层菜单项。

然后,您可以做的是在声明事件之前检测用户是在平板电脑/智能手机上还是在笔记本电脑上,然后在设备上添加正确的事件。

您可以通过在userAgent string witch上使用正则表达式来检测设备,其中包含用户浏览器上的数据,并且可以从导航器API =>navigator.userAgent

请参阅此网站以获取您需要的正则表达式:http://detectmobilebrowsers.com/

或者,您也可以使用外部库,例如移动检测.js。

最新更新