我知道这听起来怎么样但是可以用jquery改变点击的悬停效果吗?
我有这个site如果你看一下菜单(特别是e-rowery),你可以看到它适用于胡佛。不幸的是,没有触摸屏设备使用胡佛,所以我想将其转换为点击菜单而不是胡佛。有任何想法如何用jquery做到这一点?
答案 0 :(得分:0)
实际上,没有问题,因为具有子菜单的链接无处可去(相对于它们到达某处,您无法通过单击打开子菜单)。您可以轻松将其转换为点击次数。
但是,你必须注意到你需要替代“mouseout”。您可以通过向正文添加事件处理程序来完成此操作。用户可以单击菜单外的任何空白区域以关闭子菜单。要做到这一点,正文中的处理程序必须检查单击的元素是否是菜单中的链接。如果没有,请关闭所有菜单(如果它是菜单以外的链接,请转到它)。
您可以使用jQuery的.on()
方法将处理程序添加到子项的父级。
click anywhere in the body
<ul class="menu">
<li>
<a href="#">click me, i am inside, i have a submenu</a>
</li>
</ul>
<a class="outside" href="#">i am outside with no submenu, you can redirect</a>
$('body').on('click', function() {
alert('body clicked, close menus');
});
$('.menu a').on('click', function() {
alert('link clicked, open my submenu');
return false; //prevent further code execution, prevent body's handler
});
$('a.outside').on('click', function() {
alert('outside link clicked, go to page');
return false; //prevent further code execution, prevent body's handler
});