如前面的另一个问题所述,我有一个系统,该系统显示内容并突出显示基于hash标签的按钮.这在大多数情况下都可以正常工作,但是如果将鼠标悬停在该按钮上,它将失去其活动状态.
这是问题的[可行示例] [1].
我已经尝试过.hover(function(){return false;});但不幸的是,这没有用(尽管我想我没想到它会…!).我也尝试过禁用该按钮(然后在单击另一个按钮时重新启用该按钮),该按钮在Firefox中是完美的,但是IE7中的文本为灰色.
将不胜感激任何帮助或建议,谢谢:)
解决方法:
首先,您要提交的按钮是#,它不会使链接转到另一页,但是会产生一些不必要的滚动.您应该避免这种情况.
$('#showScarringReports').click(function(ev){ ev.preventDefault(); });
之后,如果您希望保持活动状态,则可以禁用事件处理程序,使事件处理程序从活动状态切换回原来的状态.再次以第一个为例.
$('#showScarringReports').unbind('mouseout keyup mouseup hover');
一旦激活,它将保持激活状态,以删除激活状态,然后从按钮中删除ui-state-hover类.