I’m working on a web application that has a footer that works as a toolbar and it also displays information. The layout of the app is elastic, so the footer is always visible at the bottom of the page; there is no scrolling. For reasons that are not relevant to this question, we think that the bottom of the page is the ideal place form the elements of the toolbar.
The problem I’m having with Chrome, is that there are two situations in which the status bar gets in the way and covers some of the information being displayed. The first is when hovering over a suckerfish-style menu. The status bar shows the destination when hovering over a menu element (so far so good), but in some situations it just gets stuck and never goes away until the page is refreshed (Chrome bug?).
The second issue can be seen in this jsfiddle. Since the Jquery UI slider uses an anchor tag, moving it triggers a status bar that shows the current location (pretty useless IMHO). The problem is that some of the information on the footer is updated while moving the slider, so Chrome’s status bar prevents me from presenting information this way. The status bar also gets stuck, since the anchor tag gains focus, but I was able to prevent that with this code:
$("#slider").on("slidestop", function(event, ui)
{
$("a.ui-slider-handle").blur();
});
The status bar still gets in the way while sliding, and this breaks our current design. Is there something I can do to these tags to prevent them from triggering the status bar? Thanks
You could do it by removing the href attribute from the links and reapplying their link functionality in a click handler.
Here’s an example: http://jsbin.com/ikated/1/edit
BUT this is bad design, and breaks an important browser feature for the user. It hides what the link does, hides what the link IS (unless you restyle it to use
text-decoration: underline; cursor: pointer;or whatever styling you use for links, and breaks middle-click functionality. You could replace it with another handler, but hiding the link destination is still a deceptive and user-hostile pattern IMO.