Скрыть заголовок при наведении на изображение

Вопрос или проблема

Я хотел бы скрыть атрибут заголовка изображения при наведении на изображение, так как он не нужен на моем сайте. Я попробовал следующий код и добавил его выше закрывающего </head> в header.php, но он не работает.

Мне не нужно загружать плагин, чтобы этого достичь. Атрибут заголовка не имеет влияния на SEO, поэтому не должно быть проблемы с его скрытием.

Может кто-то подсказать, почему мой скрипт не работает и что я могу сделать, чтобы он заработал, пожалуйста?

Вот код, который я попробовал в своем header.php выше закрывающего </head>

<script>
jQuery(document).ready(function($) {
    $('img').hover(function()
    { $(this).removeAttr('title'); });
});
</script>

Проверьте ошибки в консоли, нажав F12, ваш код правильный, но WordPress иногда не понимает $, используйте jQuery вместо $.

<script> 
jQuery(document).ready(function($) { 
    jQuery('img').hover(function() { 
        jQuery(this).removeAttr('title');
    }); 
});

Не нужно использовать jQuery. Сущее CSS может это сделать:

imgHide Title tag on image Hover
,img:hoverHide Title tag on image Hover
 {
opacity:0; /* оба варианта работают, выбирайте тот, который вам нравится */
display:none;
}

Установите CSS-свойство pointer-events в none.

img {
    pointer-events: none;
}

Ответ или решение

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

1. Использование jQuery

Если вы хотите использовать jQuery, убедитесь, что код написан правильно и библиотека jQuery подключена на вашем сайте. Важно помнить, что иногда WordPress может не распознавать символ $, поэтому лучше использовать полное имя jQuery. Вот исправленный код:

<script>
jQuery(document).ready(function($) {
    jQuery('img').hover(function() {
        jQuery(this).removeAttr('title');
    });
});
</script>

Убедитесь, что этот код размещен перед закрывающим тегом </head> в header.php.

2. Использование чистого CSS

Если вы хотите полностью избежать использования JavaScript, можно попробовать CSS. Однако CSS не может непосредственно скрыть атрибут title, так как он не влияет на отображение элемента. Но некоторые трюки могут помочь:

img:hover {
    opacity: 0; /* Скрывает изображение при наведении */
    display: none; /* Или полностью убирает изображение с экрана */
}

Заметьте, что это не совсем то, что вам нужно, поскольку это также скрывает само изображение, а не только текст в title.

3. Установка CSS для pointer-events

Другой способ – это отключить взаимодействие с изображениями с помощью свойства CSS:

img {
    pointer-events: none;
}

Однако этот код предотвратит любое взаимодействие с изображениями, включая клики, что может быть нежелательным.

Заключение

Если вы хотите просто скрыть атрибут title, то использование jQuery является наиболее подходящим решением, если у вас уже подключён jQuery на сайте. Убедитесь, что код выполняется корректно и библиотека подключена правильно. Если же вы хотите таблетки без JavaScript, возможно, вам нужно будет пересмотреть архитектуру вашего HTML и убрать атрибут title с изображений на этапе их создания.

Если у вас возникнут дополнительные вопросы, не стесняйтесь спрашивать!

Оцените материал
Добавить комментарий

Капча загружается...