Фильтр по:
  

  • Страница 1 из 1
  • 1
Модератор форума: likbezz  
Скрипты и коды для юкоз - Форум аццкого кодера » Как сделать? Информация для вновь прибывших » Как сделать... » Как сделать смену картинки при наведении?
Как сделать смену картинки при наведении?
Дата: Воскресенье, 05.09.2010, 17:09 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


© Автор: D@shus@, Оригинал поста,

Такой вот скрипт:

Code
<script language="JavaScript">
if (document.images) {   
img1on = new Image();   
img1on.src ="http://worldofsakura.ucoz.ru/animegggirl/profiles/gen2.jpg";   
img1off = new Image();   
img1off.src = "http://worldofsakura.ucoz.ru/animegggirl/profiles/gen1.jpg";   
}
function imgOn(imgName) {
if (document.images) {
document[imgName].src = eval(imgName + "on.src"); }}//osw
function imgOff(imgName) {
if (document.images) {
document[imgName].src = eval(imgName + "off.src"); }}
</script>
<A href="" onmouseover="imgOn('img1')" ;="" onmouseout="imgOff('img1')" title="Генриетта и Жозе">
<IMG src="http://worldofsakura.ucoz.ru/animegggirl/profiles/gen2.jpg" border="0" name="img1" width="150"></A>

Подрабатывая Кэпом скажу, что это смена картинки при наведении, так вот, проблема в том, что надо, чтобы заменялись ШЕСТь разных картинок (поотдельности).

А если написать что-то такое, скажем:

Code
<script language="JavaScript">
if (document.images) {   
img1on = new Image();   
img1on.src ="http://worldofsakura.ucoz.ru/animegggirl/profiles/gen2.jpg";   
img1off = new Image();   
img1off.src = "http://worldofsakura.ucoz.ru/animegggirl/profiles/gen1.jpg";   
}
function imgOn(imgName) {
if (document.images) {
document[imgName].src = eval(imgName + "on.src"); }}//osw
function imgOff(imgName) {
if (document.images) {
document[imgName].src = eval(imgName + "off.src"); }}
</script>
<A href="" onmouseover="imgOn('img1')" ;="" onmouseout="imgOff('img1')" title="Генриетта и Жозе">
<IMG src="http://worldofsakura.ucoz.ru/animegggirl/profiles/gen2.jpg" border="0" name="img1" width="150"></A>  

Code
<script language="JavaScript">
if (document.images) {   
img1on = new Image();   
img1on.src ="http://worldofsakura.ucoz.ru/animegggirl/profiles/rico2.jpg";   
img1off = new Image();   
img1off.src = "http://worldofsakura.ucoz.ru/animegggirl/profiles/rico1.jpg";   
}
function imgOn(imgName) {
if (document.images) {
document[imgName].src = eval(imgName + "on.src"); }}//osw
function imgOff(imgName) {
if (document.images) {
document[imgName].src = eval(imgName + "off.src"); }}
</script>
<A href="" onmouseover="imgOn('img1')" ;="" onmouseout="imgOff('img1')" title="Рико и Жан">
<IMG src="http://worldofsakura.ucoz.ru/animegggirl/profiles/rico1.jpg" border="0" name="img1" width="150"></A>

То ОБЕ картинки перестают меняться (боюсь представить, что будет, если вообще их шесть поставить). Я как-то изучала что-то подобное, но тот скрипт был в несколько раз короче и держался на Over'ах и On'ах. Ну, насколько я понимаю, здесь тоже надо какие-то переменные или айдэшники ли сменить huh ... Но проблема в том, что я в упор не вижу, где их менять...

 
Дата: Воскресенье, 05.09.2010, 17:14 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Да .... Это ЖЕСТЬ .... (блин, «приелось» слово - кто нить варианты знает???? памагите, плизззз .... ヅ) .... Короче, есть у меня под рукой похожий .... Ща сваяю ... по быстрому ... ヅ

Вот ....
Всё, прозаично просто ... Да ж не интересно .....

Код:

Code
a.Likbezz img{width:100px;height:28px;background:url('/_theme/_st/img/ico/likbezz_flesh_arts.png') no-repeat 0 0;}
a.Likbezz:hover img{background-position:0 -29px;}

Html:

Code
<a class="Likbezz" href="http://likbezz.ucoz.ru/"><img src="/_theme/_st/img/ico/spacer.gif" alt="Designed by likbezz.ucoz.ru"></a>

Пример .... (Живой ..... В студию ... ヅ) ....

Можно и не через css, точнее, не все.
Пример v2:
Стили в самом теге «img», там же и JS

Code
<a href="http://likbezz.ucoz.ru/"><img onmouseover="this.style.backgroundPosition='0 -29px'"
onmouseout="this.style.backgroundPosition='0 0' " style="width:100px;height:28px;background:url('/_theme/_st/img/ico/likbezz_flesh_arts.png') no-repeat 0 0;" src="/_theme/_st/img/ico/spacer.gif" alt="Designed by likbezz.ucoz.ru"></a>

Пример v2 (живой)

Пример v3:
Стили в самом теге «img», переключение через css

a.Likbezz img{background-repeat:no-repeat;background-position:0% 0%;}
a.Likbezz:hover img{background-position:0% 100%;}

Для всех/любых изображений с hover эффектом

Code
<a class="Likbezz" href="http://likbezz.ucoz.ru/"><img style="width:100px;height:28px;background-image:url('/_theme/_st/img/ico/likbezz_flesh_arts.png');" src="/_theme/_st/img/ico/spacer.gif" alt="Designed by likbezz.ucoz.ru"></a>

Все картинки должны быть составными - первая картинка - сверху - вторая снизу.

Пример v3 (живой) ....

В примере №3 - четко видно, что картинка немного не ровно по нижнему краю позиционирована - ещё в фотошопе .... ヅ ...

Сравнительный пример:
Пример v3-1

Ну и просто ..... ヅ
Картинка, при наведении, из черно-белой становится цветной ...
Пример v4



Flesh

Прикрепления: _likbezz-1-.html (1.1 Kb) · _likbezz_v2-1-.html (1.1 Kb) · _likbezz_v3-1-1.html (1.4 Kb) · _likbezz_v4-1-.html (1.1 Kb)

 
Дата: Воскресенье, 05.09.2010, 17:18 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Вот каким должен быть ваш код:

Code
<a href="http://likbezz.ucoz.ru/">
<img onmouseover="this.style.backgroundPosition='0 100%'"
onmouseout="this.style.backgroundPosition='0 0' " style="width:180px;height:200px;background:url('/_example/_rest/_likbezz/gen.jpg') no-repeat 0 0;" src="/_theme/_st/img/ico/spacer.gif" alt="Генриетта">
</a>

Где:
width:180px;height:200px;background:url('/_example/_rest/_likbezz/gen.jpg') no-repeat 0 0; - текущие свойства картинки ...
onmouseover="this.style.backgroundPosition='0 100%'" - при наведении.
src="/_theme/_st/img/ico/spacer.gif" - Прозрачный гиф - один для всех картинок.

Лишнее - удалить ...

А не таким:

Code
<a href="http://worldofsakura.ucoz.ru/index/anime_quot_gunslinger_girl_quot_genirietta_i_zhoze/0-465"><img style="width: 180px; height: 200px; background-image: url(/animegggirl/profiles/gen1.jpg);" src="/animegggirl/profiles/gen2.jpg%27%29" alt="Генриетта"></a>

Пример с JS и картинкой «Генриетта» ....

Пример только на css ... тоже с картинкой «Генриетта»

Flesh

Добавлено (09-Июл-2010, 13:00:36)
---------------------------------------------
... А можно пойти ещё дальше ... и написать неболшой скриптик, который будет изменять свойство «background-position» у всх картинок с заданным классом.

Вот ... только что состряпал ...

Code
<script type="text/javascript">
$(document).ready(function(){
// Start DocumentReady
$('img.myChange').hover(function(){
$(this).css('backgroundPosition','0 100%');
},function(){$(this).css('backgroundPosition','0 0');
});
// End DocumentReady
});
</script>

Где:
img.myChange - Класс картинок, к кторорым применяется скрипт ....

Code
<img class="myChange" style="width:180px;height:200px;background:url('/_example/_rest/_likbezz/gen.jpg') no-repeat 0 0;" src="/_theme/_st/img/ico/spacer.gif" alt="Designed by likbezz.ucoz.ru"></a>

Примечание:
Для картинок обязательны атрибуты «width» и «height» ... ну и, естественно, «background» ...
Примечание2:
Скрипт вставлять на страницу только один раз, а не к каждой картинке .... (мало-ли ...... умников ...)

Пример ..... (Картинка таже ... то есть «Генриетта» ....... ヅ ... Удивительно, правда ... ヅ) ....

Ну и просто так ... несколько примеров на одной странице ... (красивые картинки ... были ... ヅ) (в столбик ....)

То же самое - только в ряд ... (v3-1)(в ряд .... ヅ)

Flesh

Прикрепления: _gen_v2-1-.html (1.1 Kb) · _gen-1-.html (1.1 Kb) · _gen_v3-1-.html (1.3 Kb) · _img_hover_v3-1.html (2.4 Kb) · _img_hover_v3-1.html (2.5 Kb)

 
Дата: Воскресенье, 05.09.2010, 17:27 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Сходил на вашу страничку - глянул ...
У вас, в принципе, картинки не очень различаются - что при наведении, что в состоянии «покоя» ... ヅ

Может вам стоит просто ограничится фильтрами ...? ...

Как, например вот на этом примере? ....(ка-ла-мбур) ...

Пример ... Фильтры изображений ... (рабочий ...) ... (прозрачность - 50%)

Скрин ...

Пример ... Фильтры изображений v2... ... (прозрачность - 30%)

...

Ещё пример ... только с рамочной ... при наведении ... ヅ
...
Стили .... На всякий ....

Code
img{margin:0;border:none;cursor:pointer;text-decoration:none;}
a img.myHover{border:none;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";filter: alpha(opacity=30);opacity:.3;cursor:pointer;}
a:hover img.myHover{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";filter:alpha(opacity=100);opacity:1.0;}
a:active img.myHover{border:1px solid #F69;}



Flesh

Прикрепления: 2192782.png (92.1 Kb) · hover_img4-1-.html (1.9 Kb) · hover_img5-1-.html (1.9 Kb) · hover_img6-1-.html (2.0 Kb) · 3265033.png (95.3 Kb)

 
Дата: Четверг, 17.02.2011, 21:44 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Вот ещё вариант ....
Code
<script type="text/javascript">
$(function(){
/*Start DocumentReady*/
$('img.myChange').hover(function(){var e=$(this);
e.data('_src',e.attr('src')).attr('src',''+e.attr('src').replace(/(.jpg|.gif|.png)/,'_1$1'));
},function(){var e=$(this);e.attr('src',e.data('_src'));
});   
/*End DocumentReady*/
});
</script>

...
Пример ....
...


 
Дата: Четверг, 06.10.2011, 18:57 |
Diz6942
Лейтенант
Группа: Проверенные
Сообщений: 50
Награды: 0
Репутация: 0
Статус: Offline


Здравствуйте, likbezz! Прочитала всю эту тему. Но, к стыду своему, мало что поняла... Пожалуйста еще раз, пошагово, какой код и куда его вставлять, чтобы было так - вторая картинка в указанном посте, без дымки.
Такая штука нужна в Блоке "Проекты" - бывшая "Доска объявлений". Сайт тут

Добавлено (20.09.2011, 15:57)
---------------------------------------------
likbezz! Вы где?????? Сегодня уже вторник. Выходные давно прошли. Давайте поработаем? smile

Добавлено (06.10.2011, 18:57)
---------------------------------------------
Здравствуйте! Может кто сталкивался с такой проблемой: фотки, загружаемые на сайт разного размера. Есть квадратные, есть прямоугольные(как в высоту, так и в ширину). В итоге, на "Доске", получается совсем неприглядная картина... Может кто знает как их сделать одного размера? Или может шаблон какой-то для них прописать? Как тут.

Сообщение отредактировал Diz6942 - Понедельник, 19.09.2011, 17:48
 
Дата: Суббота, 08.10.2011, 10:10 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Diz6942,
Quote (Diz6942)
likbezz! Вы где?????? Сегодня уже вторник. Выходные давно прошли. Давайте поработаем?

А при чём здесь “выходные”? - уезжал я ) ... Далеко (в глушь кромешную ... ヅ ) ...
Ok, типа вернулся ) ...
Quote (Diz6942)
Прочитала всю эту тему. Но, к стыду своему, мало что поняла... Пожалуйста еще раз, пошагово, какой код и куда его вставлять, чтобы было так - вторая картинка в указанном посте, без дымки.

Что-то не очень понял (видимо, за время отсутствия, способность к “пониманию” слегка притупилась ヅ), как понять “без дымки” - ведь сама суть фильтров - это как раз и есть прозрачность элементов - в данном случае картинки ....


 
Дата: Суббота, 08.10.2011, 10:15 |
Diz6942
Лейтенант
Группа: Проверенные
Сообщений: 50
Награды: 0
Репутация: 0
Статус: Offline


Ура! Шеф вернулся! biggrin
По теме: Нужно чтоб при клике на демо картинку появлялось полное изображение во всплывающем окне, а не в новом. Можно и так


 
Дата: Суббота, 08.10.2011, 10:39 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Quote (Diz6942)
Нужно чтоб при клике на демо картинку появлялось полное изображение во всплывающем окне, а не в новом

Как сделать превью фотографии/картинки/рисунка на форуме ... (Чтобы при клике открывалось новое окно с полной картинкой ..) ....
Там, практически, готовые варианты, на все случаи и не только для форума.

Пример работы (Как сделать превью фотографии/картинки/рисунка на форуме ... )
...


 
Дата: Воскресенье, 27.11.2011, 16:16 |
MoVeMix
Рядовой
Группа: Пользователи
Сообщений: 10
Награды: 0
Репутация: 0
Статус: Offline


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

Делал через CSS.

Сама ссылка:

Code
<a href="/" class="hhome" title="Главная"></a>


в CSS:

Code
a.hhome {background: url(http://www.awsp.ru/_ld/14/96353729.jpg); display: block; width: 127px; height: 30px;}
a.hhome:hover {background: url(http://www.awsp.ru/_ld/14/98143884.jpg);}


Сообщение отредактировал MoVeMix - Воскресенье, 27.11.2011, 16:20
 
Дата: Пятница, 02.12.2011, 20:43 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


MoVeMix,
Quote (MoVeMix)
likbezz, у меня такой вопрос, написал простенький код, что бы уменьшить предыдущий, но есть проблема, при наведении на картинку, вторая начинает только прогружаться, как сделать, что бы при загрузке сайта загружались сразу обе картинки?

Самое простое - через спрайт - то бишь объеденить две картинки в одну, и менять только положение.
Типа:
Code
<style type="text/css">
a.hhome,a.hhome:hover{
background: url(/_example/_rest/_2011/sprite/96353729.png) no-repeat left top;
display:block;
width:127px;
height:30px;
}
a.hhome:hover{
background-position:left bottom;
}
</style>

<a href="/" class="hhome" title="Главная"> </a>

...

Или поставить двойной фон, например дополнительному элементу:
Code
<style type="text/css">
a.hhome {
background:url(http://www.awsp.ru/_ld/14/96353729.jpg);
display:block;
width:127px;
height:30px;
}
a.hhome b,a.hhome:hover{
background:url(http://www.awsp.ru/_ld/14/98143884.jpg);
}
a.hhome b{visibility:hidden;}</style>

<a href="/" class="hhome" title="Главная"><b> </b></a>

...


 
Дата: Пятница, 02.12.2011, 21:17 |
MoVeMix
Рядовой
Группа: Пользователи
Сообщений: 10
Награды: 0
Репутация: 0
Статус: Offline


likbezz, ссылка:

Quote
/_example/_rest/_2011/sprite/96353729.png


не рабочая, как это слепить 2 картинки, покажи пример если не трудно.


 
Дата: Пятница, 02.12.2011, 21:37 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


MoVeMix,
Quote (MoVeMix)
как это слепить 2 картинки, покажи пример если не трудно.

Типа так:

...


 
Дата: Пятница, 02.12.2011, 21:57 |
MoVeMix
Рядовой
Группа: Пользователи
Сообщений: 10
Награды: 0
Репутация: 0
Статус: Offline


likbezz, спасибо, попробую.

 
Скрипты и коды для юкоз - Форум аццкого кодера » Как сделать? Информация для вновь прибывших » Как сделать... » Как сделать смену картинки при наведении?
  • Страница 1 из 1
  • 1
Поиск:


Мобильная версия