当前位置: 首页 > 面试题库 >

触摸设备的文档.click功能

龙德海
2023-03-14
问题内容

我有一个使用jquery的子导航-用户单击顶层列表项,例如触发下拉菜单的“服务”。通过单击“服务”链接可以切换下拉菜单。我做到了,以便用户可以单击屏幕上的任意位置以将下拉列表切换到关闭状态。但是,由于该站点具有响应能力,因此我希望用户能够单击(触摸)屏幕上的任何位置以关闭下拉菜单,但是我的问题是它无法在触摸设备上正常工作。

我的文档单击代码设置为:

$(document).click(function(event) {

  if ( $(".children").is(":visible")) {
    $("ul.children").html" target="_blank">slideUp('slow');
  }

});

我假设document.click可能无法在触摸设备上使用,如果不能,那么有什么解决方法可以达到相同的效果?

谢谢


问题答案:

要通过单击或触摸来触发功能,您可以更改此设置:

$(document).click( function () {

对此:

$(document).on('click touchstart', function () {

或这个:

$(document).on('click touch', function () {

touchstart事件在元素被触摸时立即触发,该touch事件更像是“轻击”,即表面上的单个接触。您应该真正尝试每种方法,以找出最适合您的方法。在某些设备上,touch触发起来可能会有些困难(这可能是好事,也可能是坏事-
它阻止了阻力的计算,但是意外的阻力可能会导致其不被触发)。



 类似资料:
  • 问题内容: 我正在寻找可在触摸设备上使用的拖放插件。 我想要与允许“可放置”元素的jQuery UI插件类似的功能。 该插件jqtouch支持拖动操作,但没有落下。 这是仅支持iPhone / iPad的拖放操作。 谁能指出我在适用于android / ios的拖放插件的方向? …或者可能会更新jqtouch插件以实现可投放性,它已经在Andriod和IOS上运行。 谢谢! 问题答案: 您可以使用

  • 问题内容: 在Javascript / jQuery中,如何检测客户端设备是否有鼠标? 我有一个网站,当用户将鼠标悬停在某个项目上时,该网站会在信息面板上向上滑动。我正在使用jQuery.hoverIntent来检测悬停,但这显然不适用于iPhone/ iPad / Android等触摸屏设备。因此,在这些设备上,我想还原为点按以显示信息面板。 问题答案: +1,两者兼而有之。另一种方法是使用CS

  • 问题内容: 在iPhone / iPad / Android等触摸设备上,可能很难用手指按一下小按钮。据我所知,没有跨浏览器的方法可以通过CSS媒体查询来检测触摸设备。因此,我检查浏览器是否支持Javascript触摸事件。 到目前为止,其他浏览器还不支持它们,但是开发人员频道上的最新Google Chrome浏览器 启用了触摸事件(即使对于非触摸设备也是如此)。而且我怀疑其他浏览器制造商也会效仿

  • 问题内容: 我环顾四周,但找不到我想要的东西。 我的页面上目前有一个CSS动画,它是由:hover触发的。当使用媒体查询将页面调整为宽度超过700px时,我希望将其更改为“单击”或“触摸”。 如您所见,:hover不能在移动设备上工作,但我仍然想确保单击即可,而不是将其悬停。 如果可能的话,我宁愿使用CSS,但也对JQuery满意。 我觉得这很容易做到,但我只是缺少一些非常明显的东西!任何帮助,将

  • 问题内容: 好的,我想做的是当用户单击列表项时将div向下滑动。 Selectric),它将选择框转换为无序列表。因此,当用户单击源输出为列表项的a时,我希望div向下滑动。 在移动浏览器(iOS7)上,选择框UI与标准选择框UI相同。 关于移动设备onClick的最佳做法是什么? 基本的jQuery: 谢谢。 问题答案: 最好将事件与jQuery方法结合使用: 而且我不明白为什么要使用方法,因为

  • 本文向大家介绍如何在触摸设备上使用JavaScript拖放?,包括了如何在触摸设备上使用JavaScript拖放?的使用技巧和注意事项,需要的朋友参考一下 对于触摸式设备的JavaScript拖放,可以使用jQuery UI Touch Punch或拖放式Touch。  许多不同的事件可用于成功执行拖放操作, 有许多不同的事件需要附加,以监视整个拖放过程- 拖动开始 拖动 德拉贡特 拖曳 拖曳 下