【问题标题】:Li tapping requires two clicks to fire hrefLi Tap需要两次点击才能触发href
【发布时间】:2015-03-22 15:37:54
【问题描述】:

当用鼠标单击“菜单”时,菜单项是可见的,我可以毫无问题地单击列表中的任何链接。

当我在“菜单”上使用点击手势(触摸屏)时,菜单项变得可见,但是……这些项目需要单击 2 次才能显示 href,并且“菜单”会突出显示。

我知道这可能与传播(或不传播)有关,但我用 jquery 尝试了 click 事件,但没有成功。此外,hrefs 是本地文件,所以我不想在 jquery click 事件中导航到它们。

$("#item1").click(function(event) {
event.stopPropagation();
});


<li aria-haspopup="true"><span class="dir">Menu</span>
  <ul>
    <li id="#item1"><a href="../listItem1.html">listItem1</a></li>
    <li><a href="../listItem2.html">listItem2</a></li>
    <li><a href="../listItem3.html">listItem3</a></li>
  </ul>
</li>

【问题讨论】:

  • 您确定这不仅仅是设备的工作方式吗?它是什么设备?如果您的链接不在lis 中会怎样?一样的吗?
  • @DelightedD0D - 好问题。 li 之外的链接在点击它们时确实有效。设备是 Surface RT。 IE11.
  • 您是否尝试过其他浏览器? ...即做奇怪的废话

标签: jquery html-lists href touchscreen


【解决方案1】:

试试下面的:

$("#group li").click(function(event) {
  alert('do stuf with click');
  event.preventDefault();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li aria-haspopup="true" id="group"><span class="dir">Menu</span>
  <ul>
    <li><a href="../listItem1.html">listItem1</a></li>
    <li><a href="../listItem2.html">listItem2</a></li>
    <li><a href="../listItem3.html">listItem3</a></li>
  </ul>
</li>

【讨论】:

    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 2015-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-01
    • 2016-11-07
    相关资源
    最近更新 更多