Вы можете удалить атрибут title
при загрузке страницы.
$(document).ready(function() {
$('[title]').removeAttr('title');
});
Если вам понадобится использовать заголовок позже, вы можете сохранить его в jQuery элемента data()
.
$(document).ready(function() {
$('[title]').each(function() {
$this = $(this);
$.data(this, 'title', $this.attr('title'));
$this.removeAttr('title');
});
});
Другой вариант - изменить имя атрибута title
на aTitle
или что-то еще, что браузер игнорировал бы, а затем обновить любой JavaScript, чтобы он считывал имя нового атрибута вместо title
.
Обновление:
Интересная идея, которую вы могли бы использовать, это «лениво» удалять заголовок при наведении на элемент. Когда пользователь наводит курсор на элемент, вы можете вернуть значение заголовка обратно.
Это не так просто, как должно быть, потому что IE неправильно удаляет всплывающую подсказку при событии наведения мыши, если для атрибута title установлено значение null
или атрибут title. Однако если при наведении курсора на пустую строку (""
) установить всплывающую подсказку, эта подсказка будет удалена из всех браузеров, включая Internet Explorer.
Вы можете использовать метод, который я упомянул выше, чтобы сохранить атрибут title в методе data(...)
jQuery и затем вернуть его на mouseout
.
$(document).ready(function() {
$('[title]').mouseover(function () {
$this = $(this);
$this.data('title', $this.attr('title'));
// Using null here wouldn't work in IE, but empty string will work just fine.
$this.attr('title', '');
}).mouseout(function () {
$this = $(this);
$this.attr('title', $this.data('title'));
});
});