我正在开发一个在左下角设计有关键导航元素的网站。在谷歌浏览器中,左下角有一个状态栏,当您将鼠标悬停在页面上的链接上时会出现该状态栏,并显示该页面的 URL。不过,如果你离得足够近,它就会移动到右下方。这会妨碍此导航元素。
我的问题是可以使用 CSS、HTML 或 JavaScript 删除/移动(右下方)吗?请参阅下面的一些注释。
- 理想情况下,我想将其永久移至右侧。
- 我知道这是必需的/最佳实践,原因有很多,所以我想避免删除。
- 我知道我可以从链接中删除 href 并使用 onClick 事件,这可能是一种可行的解决方法,但在这种情况下向右移动是更好的解决方案。
- 我也确信,关于将此导航元素放在左下方的问题存在大量争论,但我正在寻找在我必须使用的参数范围内的解决方案。
谢谢
最佳答案
Chrome 从您的链接中读取 HREF 属性以在状态栏中显示该链接。
因此,如果您从 A 标签中删除 HREF,状态栏将不会显示。但是,该链接也不起作用,:)。这就是为什么您可以在 MouseOver 上创建一个事件处理程序来解决这个问题并保持您的链接正常工作。
$("body").on('mouseover', 'a', function (e) {
var $link = $(this),
href = $link.attr('href') || $link.data("href");
$link.off('click.chrome');
$link.on('click.chrome', function () {
window.location.href = href;
})
.attr('data-href', href) //keeps track of the href value
.css({ cursor: 'pointer' })
.removeAttr('href'); // <- this is what stops Chrome to display status bar
});
您可能会遇到额外的问题,例如禁用的链接或具有其他事件处理程序的链接。在这种情况下,您可以将选择器调整为 'a:not(.disabled)'
或者也许只是将此委托(delegate)添加到具有 css 类 ".disable-status"
的已知元素中,因此您的选择器将是:"a.disable-status"
.
关于javascript - 删除/移动 Google Chrome 左下角的状态栏(链接地址栏),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23800165/