20 Stimmen

Ist es möglich, den href-Titel zu verbergen?

<a href="link.html" title="Titletext">

...ist der Code.

Ich benötige die title Attribut aufgrund von slimbox aber ich möchte den Titel-Text ausblenden, der angezeigt wird, wenn man mit der Maus über den Link fährt.

Irgendwelche Ideen?

6 Stimmen

Ja, wenn Sie sich das Duplikat hier ansehen: stackoverflow.com/questions/1299772/ oder hier: stackoverflow.com/questions/457366/

0 Stimmen

Slimbox benötigt nicht die title Attribut, es wird standardmäßig verwendet, um mit Lightbox kompatibel zu sein, aber Sie können es leicht in jedes andere Attribut ändern. Eine benutzerdefinierte Funktion kann dem nicht verschlüsselten Teil des Skripts hinzugefügt werden. Bitte lesen Sie die API-Dokumentation über die Funktion "LinkMapper".

0 Stimmen

Überschreiben Sie die Funktion, die den Titel von der Variable "title" auf etwas anderes wie title_text lädt, normalerweise ist wie zwei vars, die eine, um es zu setzen und die eine, die den Text speichert, Ihre neue Variable wird nicht von Ihrem Browser ergo nicht angezeigt werden, wenn Sie schweben

18voto

bobince Punkte 512550

Wie wär's mit einem schönen einfachen:

<a href="link.html" title="Titletext"><span title=" ">text</span></a>

(Am besten, Sie schreiben etwas wirklich Nützliches in den verschachtelten Titel).

1 Stimmen

Ist die Verwendung von title in span gültiges html?

3 Stimmen

Ja, title ist für alle Elemente gültig.

17voto

jeroen Punkte 89799

Angenommen, Sie verwenden ein Bild-Tag im a-Tag, können Sie einfach einen alternativen Titel für das Bild verwenden (auch ein Leerzeichen), der den Titel des Links überschreibt, wenn Sie den Mauszeiger darüber bewegen.

0 Stimmen

Obwohl dies funktioniert, ist es erwähnenswert, dass es nicht mehr W3C gültig ist. Attribute sollten keine führenden oder nachfolgenden Leerzeichen haben.

9voto

fruitwerks Punkte 91

Mit jQuery ist das ganz einfach

$("li.menu-item > a").attr('title', '');

Dadurch wird der Titel von allen a-Elementen der Klasse li menu-item entfernt - natürlich kann man sich das so einfallen lassen, dass sie beim Überfahren mit der Maus einfach ausgeblendet werden :)

4 Stimmen

Ein anonymer Benutzer kommentiert die Sie einfach verwenden können .removeAttr('title'); stattdessen

7voto

Lokin Punkte 71

Was den Vorschlag "wie wäre es mit einem schönen einfachen" betrifft, den ich auf mehreren Websites gesehen habe, würde ich persönlich dies aus zwei Gründen nicht vorschlagen.

  1. Bildschirmleser und sehbehinderte Nutzer sind auf Titelattribute angewiesen, die laut vorgelesen werden. Ich glaube, dies war der ursprüngliche Zweck und Grund für die Verwendung von Anker-Tags und ist ein wichtiger Aspekt des Abschnitts 508 der US-Regierung zur Barrierefreiheit im Internet. Ich denke, ein Bildschirmlesegerät würde in diesem Fall alle Titel vorlesen; den ersten und dann den zweiten, was für einen sehbehinderten Benutzer sehr verwirrend sein könnte. Er würde nicht verstehen, warum er zwei Überschriften hört, wenn sie unterschiedlichen Text enthalten. Handelt es sich um zwei verschiedene Anker, von denen sie hören? Wenn ja, warum können sie dann nicht auf den anderen Anker klicken oder ihn auswählen und erhalten nur eine Webseite (als Szenario).

  2. Wenn Sie zusätzlichen Text in beide Titel einfügen, können Google und viele andere Suchmaschinen diese Aktion als Black-Hat-Seo betrachten und dazu führen, dass Ihre Website aus dem Verzeichnis der jeweiligen Suchmaschine verbannt wird (auch bekannt als "Stuffing"), wie dies bei BMW in Deutschland bereits von Google geschehen ist.

Ich persönlich halte es für die beste Methode, das Titelattribut so zu belassen, wie es gedacht war, und es dann mit Javascript oder CSS irgendwie auszublenden. Diese Methoden hätten keine Auswirkungen auf Screenreader, Webcrawler und sehbehinderte Nutzer.

1 Stimmen

+1 für das Problem der Zugänglichkeit und der korrekten Verwendung des Attributs Titel.

3voto

Jim Punkte 31

Ich habe mich mit Jquery ausgetobt... ;) Ich brauchte das für ein Portfolio: Titel-Tags für eine Lightbox, aber keine bei Mouse-over. Das hat bei mir funktioniert, danke für den Tipp!

$(function(){
    $("li.menu-item > a").hover(function(){
        $(this).stop().attr('title', '');},
        function(){$(this).stop().attr();
        });
});

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X