![](/img/trans.png)
[英]In and Ext JS form, how can I make some field widths wider than others?
[英]Why does Android click area have a wider radius than touchstart? How can I make it consistent?
我有一个简单的矩形锚标签。 我使用jQuery来响应click
和touchstart
事件,具体如下:
$(document).ready(function() {
$("#button").on("click touchstart", function(e) {
$("#log").append(e.type + "<br/>");
});
});
HTML看起来像这样:
<div id="wrapper">
<a id="button" href="#"> </a>
</div>
<div id="log">Log:<br></div>
CSS很简单:
#wrapper {
padding:50px;
}
#button {
display:block;
width:200px;
height:40px;
text-decoration:none;
color:#333;
background-color:#efefef;
border:0px;
padding:0px;
margin:0px;
}
当您点击矩形锚点的边缘时,仅触发click
事件。 点击该区域的中心时,会触发click
和touchstart
。
为什么只有click
似乎是通过胖指检测触发的? 有没有办法让touchstart
事件也能用胖手指?
触摸设备上的click
事件旨在模拟基于点击的点击 。 这里存在一个很大的问题,因为触摸界面与桌面界面明显不同。 最大的区别? 鼠标点击比手指触摸要精确得多。 为了确保桌面站点和应用程序至少在某种程度上有用,您设计的行为就是这样设计的。 这样,移动电话上的用户仍然能够点击小链接,即使他的手指实际上太不精确而无法准确地点击链接。
你不会喜欢这个,但解决方案就是不要在触摸屏设备上使用click
事件。 这通常没有完成,因为click
事件实际上是在touchEnd
事件发生后大约300ms触发的,因此无论如何都会感到迟钝(延迟是等待双击),现在你有另一个不使用它的理由。
同时具有触摸屏和鼠标的设备。 您的选择是否想要打扰那些。 就个人而言,我倾向于与他们一起模仿点击并在移动设备上使用touch
事件时生活在额外的滞后,但如果你花时间,你可以创建更精心制作的解决方案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.