Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Надо сделать цикличность (https://javascript.ru/forum/misc/31833-nado-sdelat-ciklichnost.html)

Steans 22.09.2012 15:40

Надо сделать цикличность
 
Есть такой код, изначально у нас ссылка прозрачна, при наведении она плавно появляется, а при убирании мыши она снова пропадает.

$('a.link').css("opacity", "0");
    $('a.link').hover(function() {
        $(this).animate({opacity: 1}, 'normal');
    }, function() {
        $(this).animate({opacity: 0}, 'normal');
    });

Как сделать так, чтобы при наведении ссылка маргала, т.е. то опасити 0, то 1, а при убирании курсора переставала маргать.

Попытался сделать так, но не помогло:
$('a.link').css("opacity", "0");
    $('a.link').hover(function() {
        $(this).animate({opacity: 1}, 'normal').animate({opacity: 0}, 'normal', arguments.callee);
    }, function() {
        $(this).animate({opacity: 0}, 'normal');
    });


Помогите решить вопрос.

Dim@ 22.09.2012 15:46

Steans,
можно конечно так сделать, но зачем делать моргающую ссылку - многих посетителей сайтов бесят постоянно моргающие элементы ;)

Steans 22.09.2012 15:50

Она же будет моргать только при наведении + клиент пожелал чтобы элемент был моргающим. Вот только не соображу как реализовать.

Steans 22.09.2012 18:13

Неужели никто не знает как сделать? Срочно надо, выручайте.

Dim@ 22.09.2012 18:18

Steans,
ща погоди сделаю ;)

Dim@ 22.09.2012 19:41

<a id="ss">Ссылка</a>
<script type="text/javascript">
var ss = document.getElementById("ss");
ss.onmouseover = function (){
 if (ss.style) ss.style.opacity = ((ss.style.opacity == 0) ? 1 : 0);
 ss.time = setTimeout(arguments.callee, 100);
}
ss.onmouseout = function () {
 this.style.opacity = 0;
 clearInterval(this.time);
}
</script>

Steans 22.09.2012 20:18

Бывают такие же глюки как и при написании на jq, анимация не всегда останавливается. А и как сделать чтобы анимация происходила плавно?

Dim@ 22.09.2012 20:32

Steans,
ссори - она вообще не должна останавливаться, поправил

Dim@ 22.09.2012 20:37

Цитата:

Сообщение от Steans
А и как сделать чтобы анимация происходила плавно?

зачем? вы же уже написали на jq плавный переход;)

Steans 22.09.2012 20:49

Спасибо вам за помощь.


Часовой пояс GMT +3, время: 08:55.