リンクのポップアップ タイトルを非表示にしながら、視覚障害者向けのページに表示し続ける方法はありますか?
6 に答える
これは、リンクのタイトルを解釈してツールチップ/ポップアップを表示するブラウザの機能です。それらを抑える方法はありません。試してみましたが (クライアントも気に入らなかったため)、回避する方法はありません。
これが解決されたことはわかっていますが、この回避策も見つかりました:jQueryを使用してネイティブツールチップを非表示にする
クライアントが独自のツールチップ (CSS で行われた) を表示したいプロジェクトでこの問題が発生しましたが、ブラウザで開始されたツールチップのために表示されていたため、2 回表示されました。「title」属性を削除し、代わりに「data」を使用して CSS にテキストを入力することで、この問題を回避しました。
ソースコードでしか見えないので、視覚障害者向けのページにそれらを残すという意味がわかりませんか?
例えば:
<a href="link" title="something">Link title here</a>
ページに「ここにタイトルをリンク」というリンクが表示され、カーソルを合わせると迷惑なポップアップが表示されます。
<a href="link" data="something">Link title here</a>
「ここにタイトルをリンク」というリンクが表示されますが、ホバリング時に煩わしいポップアップは表示されませんが、data
タグを使用してそこに置きたいものを参照できます (この場合、CSS のツールチップのテキストを参照する)。
明らかに、タイトルタグを完全に削除すれば問題は解決しますが、そこに保持する必要があるとあなたは言ったので、これは以前に使用された私の回避策です.
...理想的ではないかもしれませんが、タグ内の属性の代わりに a をいつでも試すことができますtitle
。<a href>
<span>
<a>
/* screen.css */
a { }
a span.titleText {
display: none;
position: absolute;
bottom: 1.2em;
left: 0;
}
a:hover span.titleText,
a:active span.titleText,
a:focus span.titleText {
display: block;
}
/* audio.css */
a span {
display: inline; /* or whatever the relevant attribute would
be in an audio stylesheet. */
}
<head>
<link href="screen.css" type="text/css" rel="stylesheet" media="screen" />
<link href="audio.css" type="text/css" rel="stylesheet" media="screen-reader, audio" />
</head>
<a href="http://some.url.com">
<span class="titleText">This is the title</span>This is the link
</a>
ただし、特に実用的なソリューションとして提案するわけではありません。そして、それが検証されないことはかなり確信しています。JS を知っていれば、もっと実行可能なものを提案したいと思いますが、それでもうまくいくとは確信していません。
これはjQueryで機能します。
var val;
$('[YOUR_SELECTOR]').hover(function() {
val = $(this).attr('title');
$(this).removeAttr('title');
},function() {
$(this).attr('title',val);
})
title
私のブラウザのリンクは、属性がない限り、そのようなツールチップを表示しません。
必要に応じて、Greasemonkeyを使用して、この JavaScript をすべてのページで実行し、それらを削除することができます。
var anchorTags;
anchorTags = document.getElementsByTagName("a");
for(var i = 0; i < anchorTags.length; i++) {
anchorTags[i].removeAttribute("title");
}