Подтвердить что ты не робот

Можно ли скрыть заголовок href?

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

... является кодом.

Мне нужно использовать атрибут title из-за slimbox, но я хочу скрыть заголовок-текст, который появляется, когда наведите указатель мыши на ссылку.

Любые идеи?

4b9b3361

Ответ 1

Предположим, вы используете тег изображения в теге, вы можете просто использовать альтернативный заголовок для изображения (даже пробел), и это будет перезаписывать заголовок ссылки, когда вы наводите на нее курсор.

Ответ 2

Как насчет приятного простого:

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

(Лучше, поместите что-то действительно полезное во вложенный заголовок.)

Ответ 3

Это очень просто с jQuery

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

Это приведет к удалению заголовка из любых элементов меню-класса li - конечно, вы можете получить фантазию, чтобы они просто спрятались на мыши:)

Ответ 4

В отношении "как насчет приятного простого" предложения, которое я видел на нескольких сайтах, я лично не предлагал это по двум причинам.

  • Считыватели экрана и пользователи с ослабленным зрением полагаются на атрибуты заголовка, которые считываются вслух. Я считаю, что это была первоначальная цель и причина для них в якорных тегах и является крупным аспектом Секции доступа к веб-сайтам США 508. Я думаю, что в этом случае программа чтения с экрана будет читать все заголовки; первый, а затем второй, который может быть очень запутанным для пользователя с ослабленным зрением. Они не понимают, почему они слышат два esp, если они содержат другой текст. О чем говорят два разных якоря? Если да, то почему они не могут щелкнуть или выбрать другой, который они слышат, и продолжать получать только одну веб-страницу (как сценарий).

  • Если вы поместите дополнительный текст в оба заголовка Google, и многие другие поисковые системы могут рассматривать это действие как черную шляпу seo и могут привести к тому, что ваш сайт будет запрещен из этого списка поисковых систем (он же набивка), это случилось с BMW в Германии от Google уже.

Я лично считаю, что лучшим способом является сохранение атрибута title, поскольку он должен функционировать, а затем использовать Javascript или css, чтобы как-то скрыть его. Эти методы не повлияют на экранные программы, веб-сканеры и пользователи с ослабленным зрением.

Ответ 5

Мне понравилось jquery...;) Мне было нужно это для портфолио: title-tags для лайтбокса, но ни один из них не был включен. Это помогло мне, спасибо за подсказку!

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

Ответ 6

// Suppress tooltip display for links that have the classname 'suppress'

var links = document.getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
    if (links[i].className == 'suppress') {
        links[i]._title = links[i].title;
        links[i].onmouseover = function() {
             this.title = '';
        }
        links[i].onmouseout = function() {
             this.title = this._title;
        }
    }}

Чтобы процитировать Aron Rotteveel, ответьте на первый вопрос, связанный в моем комментарии к вопросу ( Отключение подсказок браузера по ссылкам и <abbr> )

Ответ 7

Вам не нужно использовать атрибут title с Slimbox. См. Пример нескольких изображений в верхней части этой страницы: http://code.google.com/p/slimbox/wiki/MooToolsAPI.

Вы можете просто удалить атрибут title от своего якоря и передать текст title (описание вашего изображения) в функцию Slimbox open, которую вы вызываете с помощью события onclick вашего якоря.

Ответ 8

Самый простой способ:

после использования slimbox, добавьте следующий код ниже:

$('*[title]').removeAttr('title');

надеюсь, что это может помочь.

Ответ 9

Нет гарантий, но в зависимости от того, как работает Slimbox, вы можете включить заголовок, а затем использовать что-то вроде jQuery, чтобы удалить его через несколько секунд после загрузки страницы. Предполагая, что Slimbox индексирует атрибут Title и сохраняет его где-то после его чтения, вы можете безопасно удалить его после этого.

Ответ 10

Не могли бы вы просто пропустить ссылки в DOM и установить атрибут title в пустую строку.

var DOMlinks = document.links;
for(i=0;i<DOMlinks.length;i++){
DOMlinks[i].title = ""
}

Ответ 12

Если вы используете jquery, вы можете сделать следующее

$("a").mouseover(function(e){ preventdefault();} );

(не протестировал его, хотя)

Ответ 13

Используя идею Дэвида Томаса, вы можете создать более элегантное решение с помощью jQuery:

$('[title]').each(function(){
    $(this).data('original-title', $(this).attr('title'));
}).hover(
    function () { 
        $(this).attr('title','')
    }, function () { 
        $(this).attr('title',$(this).data('original-title'))
});

Ответ 14

jQuery - это должно быть прямо:

var hiddenTitle; //holds the title of the hovered object
$("li.menu-item > a").hover(function() {
    hiddenTitle = $(this).attr('title'); //stores title
    $(this).attr('title',''); //removes title
}, function() {
    $(this).attr('title',hiddenTitle); //restores title
});

Ответ 15

Это мое решение jQuery, оно делает все, что вам нужно, и сохраняйте правильное использование атрибута title. Просто измените селектор в соответствии с вашими потребностями.

/*
 * jQuery remove title browser tooltip
 */
var removeTitleSelector = 'a.removeTitle';
jQuery('body').on('mouseover', removeTitleSelector, function () {
    jQuery(this).data('title', jQuery(this).attr('title'));
    jQuery(this).removeAttr('title');
}).on('mouseout', removeTitleSelector, function () {
    jQuery(this).attr('title', jQuery(this).data('title'));
});

Ответ 16

Как прочитано по другому вопросу, я предлагаю переключить атрибут "title" на некоторый "заголовок данных", чтобы он был доступен для чтения с экрана для пользователей с ограниченными возможностями. Как сказал Локин, сохранение удобства использования сайта для людей с ограниченными возможностями и инвалидов должно также быть чем-то, что нужно учитывать при разработке.