我正在一个需要鼠标悬停菜单的网站上工作.我不建议从可访问性的角度来看鼠标悬停菜单,但使用jQuery实现它很容易.
问题是:我们还需要支持触摸屏设备(平板电脑).在这样的设备上,您没有鼠标,因此鼠标悬停事件不起作用.我希望jQuery有一个longpress事件,但事实并非如此.我确实找到了使用谷歌的jQuery longclick plugin,但它适用于jQuery 1.4,所以我并不热衷于使用它.此外,jQuery插件网站目前正在维护,所以这不是很有帮助.
解决方法
事实证明,你可以使用jQuery 1.8的现有
longclick plugin for jQuery 1.4.
$("#area").mousedown(function(){ $("#result").html("Waiting for it..."); }); $("#area").longclick(500,function(){ $("#result").html("You longclicked. Nice!"); }); $("#area").click(function(){ $("#result").html("You clicked. Bummer."); });
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script> <script src="http://rawgit.com/pisi/Longclick/master/jquery.longclick-min.js"></script> <p id="area">Click me!</p> <p id="result">You didn't click yet.</p>