#javascript #jquery #html #css #effect
#javascript #jquery #HTML #css #эффект
Вопрос:
Я хочу добавить эффект свечения при наведении курсора мыши на кнопку или изображение. Как мне сделать это с помощью javascript, jquery или CSS? Вот пример того, как я хочу, чтобы это выглядело http://www.flashuser.net/flash-menus/tutorial-flash-glow-buttons-menu.html
Кто-нибудь может дать мне какой-нибудь пример кода?
Заранее спасибо
Ответ №1:
Если вы не возражаете против ориентации на современные браузеры, вы можете использовать CSS-переходы и свойства box-shadow, JS не требуется.
Посмотрите этот сайт здесь:
http://designshack.co.uk/articles/css/5-cool-css-hover-effects-you-can-copy-and-paste
(Прокрутите вниз, пока не увидите «Затухание» и «Отражение»)
Демонстрация здесь:http://designshack.co.uk/tutorialexamples/HoverEffects/Ex5.html
Комментарии:
1. Вместо того, чтобы просто указывать ссылку, вы могли бы также предоставить прямой ответ. На всякий случай, если ссылка не работает.
Ответ №2:
Никогда не бывает плохого времени для публикации радиоактивных кнопок, которые являются чистым CSS3. Правда, только в браузерах Webkit (например, Chrome и Safari). Вот модифицированная версия, которая просто светится при наведении курсора, что гораздо меньше отвлекает:
@-webkit-keyframes greenPulse {
from { background-color: #749a02; -webkit-box-shadow: 0 0 0 #333; }
to { background-color: #91bd09; -webkit-box-shadow: 0 0 18px #91bd09; }
}
a.green.button {
background-color: #749a02;
border-radius: 0.5em;
color: #fff;
padding: 0.5em;
text-decoration: none;
}
a.green.button:hover {
background-color: #91bd09;
-webkit-animation-name: greenPulse;
-webkit-animation-duration: 2s;
-webkit-animation-iteration-count: 1;
-webkit-box-shadow: 0 0 18px #91bd09;
}
<a href="#" class="green button">Click Me</a>
Демонстрация jsFiddle. Это должно упростить задачу, поскольку все больше браузеров используют его, но до тех пор это всего лишь дополнение к решениям на основе JavaScript.
Комментарии:
1. Это можно легко расшифровать и для других браузеров.
2. Я простой пользователь SO, я вижу код, а не ответ только по ссылке, я поддерживаю! : p
Ответ №3:
Вот довольно хороший пример jQuery и код:
http://bavotasan.com/tutorials/creating-a-jquery-mouseover-fade-effect/
Ответ №4:
Используя CSS, вы также можете добиться того же:
HTML
<img class="opacity_img" src="image.png" alt="" />
CSS для IE:
.opacity_img{
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=45)";
filter:alpha(opacity=45);
}
.opacity_img:hover{
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
filter:alpha(opacity=100);
}
CSS для других браузеров:
.opacity_img{
opacity: 0.45;
}
.opacity_img:hover{
cursor:pointer;
opacity: 1.0;
}
Комментарии:
1. это именно то, что я искал
Ответ №5:
лайза дала отличный ответ — эффект, достигнутый всего за несколько строк кода.
Но если вы хотите, чтобы это было более плавно, вы можете продлить переход непрозрачности на некоторое время, добавив:
.opacity_img{
opacity: 0.45;
transition: opacity 0.5s;
}
.opacity_img:hover{
cursor:pointer;
opacity: 1.0;
transition: opacity 0.5s;
}