4

リンクのポップアップ タイトルを非表示にしながら、視覚障害者向けのページに表示し続ける方法はありますか?

4

6 に答える 6

5

これは、リンクのタイトルを解釈してツールチップ/ポップアップを表示するブラウザの機能です。それらを抑える方法はありません。試してみましたが (クライアントも気に入らなかったため)、回避する方法はありません。

于 2009-05-01T01:03:23.393 に答える
3

これが解決されたことはわかっていますが、この回避策も見つかりました:jQueryを使用してネイティブツールチップを非表示にする

于 2009-08-19T14:43:59.420 に答える
1

クライアントが独自のツールチップ (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 のツールチップのテキストを参照する)。

明らかに、タイトルタグを完全に削除すれば問題は解決しますが、そこに保持する必要があるとあなたは言ったので、これは以前に使用された私の回避策です.

于 2015-07-22T19:15:53.693 に答える
0

...理想的ではないかもしれませんが、タグ内の属性の代わりに 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 を知っていれば、もっと実行可能なものを提案したいと思いますが、それでもうまくいくとは確信していません。

于 2009-05-01T01:13:03.417 に答える
0

これはjQueryで機能します。

var val;
$('[YOUR_SELECTOR]').hover(function() {
    val = $(this).attr('title');
    $(this).removeAttr('title');
  },function() {
    $(this).attr('title',val);
})
于 2013-01-20T18:39:06.660 に答える
-1

title私のブラウザのリンクは、属性がない限り、そのようなツールチップを表示しません。

必要に応じて、Greasemonkeyを使用して、この JavaScript をすべてのページで実行し、それらを削除することができます。

var anchorTags;
anchorTags = document.getElementsByTagName("a");
for(var i = 0; i < anchorTags.length; i++) {
  anchorTags[i].removeAttribute("title");
}
于 2009-05-01T01:12:08.100 に答える