1

on()在 iOS 的 Safari 移动浏览器上使用 jQuery 的功能,如下所示:

$("#content").on(".element", click(function(){ do stuff});

单击.elementSafari 时会突出显示整个#content区域,而不仅仅是该区域.element

使用时

$(".element").click(function(){do stuff});

而是突出显示右侧区域。我想这是预期的行为,但对用户来说根本不直观,所以我正在寻找一种解决方法。

我知道我可以通过使用完全摆脱突出显示,-webkit-tap-highlight-color: rgba(0,0,0,0);但我认为突出显示实际上通常非常有用,因为 CSS 的悬停在移动设备上已经没有用了。

jQuery 的 on 函数和 Safari Mobile 有没有办法获得点击高亮.element

4

1 回答 1

5

我通过以下方式解决了它:

  1. 放入启用css伪类document.addEventListener("touchstart", function(){}, true);的文档准备功能:active
  2. 完全禁用点击突出显示:-webkit-tap-highlight-color: rgba(0,0,0,0);
  3. 添加.element:active{background: #cccccc;}

这样,点击的(活动)元素在触摸时会获得漂亮的灰色背景。

于 2012-10-02T07:41:52.057 回答