Миготлива кнопка javascript

Наведіть мишкою на кнопку.

Код HTML (вставляти між тегами і ):



Запропонуйте цю статтю друзям:

Якщо Вам сподобався сайт, то розмістіть посилання на нього (у себе на сайті, на форумі, в контакті):

Вона виглядає ось так:

  • BB-код посилання для форумів (наприклад, можете поставити її в підписі):
  • Мені теж дуже сподобалася ця ідея. На жаль, я не вмію програмувати. Але проблема, на мою думку, в тому, що при швидкому водінні мишки починають працювати одночасно відразу дві функції. Думаю, що: 1) Треба залишити одну функцію, яка починає працювати при onMouseOver; 2) Після кожного кроку зміни кольору має перевірятися умова, де покажчик миші. Якщо над кнопкою, то цикл повторюється. Якщо поза кнопки, то колір повинен змінюватися в іншу сторону. Якщо у кого є рішення, напишіть на форумі, а тут дайте посилання. Може бути, я і сама напишу, якщо вивчу ява скрипт.

    шкода, у Русакова розриву рядків немає)

    Підкажіть, будь ласка, як правильно записати умова if (указатель_миші_находітся_над_button = true) Умова всередині функції, яка буде всередині head

    Тут я бачу тільки один варіант. Треба створити змінну flag, якій привласнювати значення true, коли мишку навели на кнопку (onmouseover), а коли відводять мишку з кнопки (onmouseout), то привласнювати значення false. І в умови перевіряти значення змінної flag.

    а можна запитати кожного разу анімація відбувається стільки ж секунд скільки і попередній раз.Напрімер анімація 3 секунди а наступна теж 3 секунди?

    Якщо так то тут дуже легко вирішити цю проблему

    Так, однакову кількість часу.

    ну тоді можна при початку першої анімації створити змінну і привласнити їй значення false а потім при завершенні анімації присвоїти їй true.Когда користувач захоче почати інших анімацію можна перевірити якщо значення змінної одно false то return false; якщо true то return false якщо я пояснив не зрозуміло то можу написати код.

    ой я не правильно написав якщо якщо true то return true a НЕ false))

    Чи не вийде, setTimeout () в 15 ітерацій просто ставиться в чергу, а не виконується. Отже, якщо після циклу поставити true, то true буде набагато раніше, ніж пройде навіть найперше зміна кольору.

    тоді потрібно написати 2 settimeout-а 1 для зміни кольору а другий для зміни значення змінної.

    Схожі статті