私は、左下隅に主要なナビゲーション要素が設計されているウェブサイトに取り組んでいます。 Google内ではChrome左下にステータスバーがあり、ページ上のリンクをロールオーバーするとページのURLが表示されます。十分に近づくと、右下。これは、このナビゲーション要素の邪魔になっています。
私の質問は、CSS、HTML、またはJavaScriptを使用してこれを削除/移動(右下)できるかどうかです。以下の注意事項をご覧ください。
ありがとう
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)'
に調整するか、この委譲をcssクラス_".disable-status"
_を使用して既知の要素に追加するだけでよいため、セレクターは_"a.disable-status"
_になります。
このスクリーンショットからわかるように、Chromeは、エッジ上のリンク(「コメントを追加」リンク)をロールオーバーすると、ステータスバーがウィンドウの範囲外に移動するようですこの場合には)。
だから…気にしません。ブラウザーの動作に組み込まれているため、変更が非常に困難になります。むかしむかし、javascriptを使用してステータスバーのコンテンツを変更することができましたが、ブラウザのベンダーはあらゆるセキュリティ上の理由でこれを止めました。
onclick
ボッジにうんざりしないでください。あなたはアクセシビリティを失うでしょう、そして、html悪魔はあなたのすべての眠っている瞬間を悩ませます。
実際、これはすべて望ましい動作と考えることができます。ナビゲーションとステータスがすぐ隣にあるため、ユーザーが適切なナビゲーションを選択するのは非常に簡単です(URLがユーザーフレンドリーであることが前提です)。
tl/dr:しないでください。
リンク付きのこの小さなステータスがhrefでポップアップされるようです。 href属性なしで要素を作成し、代わりにonclickイベントを使用してユーザーに指示することができます。
実は、訪問した機能が不足していると思います。