Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 26.06.2018
Сообщений: 3
1

При нажатии двух кнопок меняется картинка

16.07.2019, 19:38. Показов 2560. Ответов 3

Author24 — интернет-сервис помощи студентам
Всем привет, в js новичок и есть вот такой вопрос
Допустим, есть кнопка "ONE" и кнопка "TWO"
При нажатии на них меняется картинка, тут в дело вступает кнопка "THREE" и если до этого была нажата кнопка "ONE" должна показываться одна картинка, а если последовательность была "TWO" "THREE" то картинка должна быть иной.
Как этого можно добиться? Желательно пример скиньте
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.07.2019, 19:38
Ответы с готовыми решениями:

Значение не меняется при нажатии кнопок
Здравствуйте, сделал полоску для выбора количества продукта, она имеет ещё 2 кнопки, -+ при нажатии...

При нажатии на кнопку картинка прячется, и надпись на кнопке меняется на «покажи меня»
2.Сначала на странице две картинки в рамках и две кнопки с надписью «спрячь меня». При нажатии на...

Последовательное программное нажатие двух кнопок при нажатии на третью
Здравствуйте, подскажите пожалуйста, какой код позволит программно нажать последовательно две...

Необходимо, чтобы при нажатии на одну из кнопок меню, фрейм с рекламой сворачивался, и разворачивался снова при нажатии на другую кнопку
Задача такая: Есть три фрейма (расположены друг под другом) - это реклама (вверху), меню...

3
Эксперт JS
2034 / 1093 / 408
Регистрация: 29.04.2016
Сообщений: 2,612
16.07.2019, 23:26 2
Лучший ответ Сообщение было отмечено Moredgame как решение

Решение

Moredgame,

https://codepen.io/Mr_Sergo/pe... itors=1010
HTML5
1
2
3
4
5
6
<div class="myClass">
    <button id="ONE">ONE</button>
    <button id="TWO">TWO</button>
    <button id="THREE">THREE</button>
</div>
<img id="image">
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
let str = '';
document.querySelector('.myClass').addEventListener('click',e => {
    str += e.target.id;
    if(str.match('ONETHREE')){
        image.src = 'https://www.uncloudit.com/files/1-Number-PNG%20100%20x100%20(2).png';
        str = '';
    }
    else if(str.match('TWOTHREE')){
        image.src = 'https://arhivurokov.ru/kopilka/uploads/user_file_5711d8dfd38a3/konspiektzaniatiiapomatiematikievsriednieighruppiestoitvpolietieriemok_7.png';
        str = '';
    }
    else image.src = '';
});
Так?
1
0 / 0 / 0
Регистрация: 26.06.2018
Сообщений: 3
17.07.2019, 00:10  [ТС] 3
Да, спасибо большое, на сайте который вы скинули все гуд, а вот когда перекопировал в html и js файлы почему-то не работает, думаю тут моя криворукость где-то аххаха
Благодарю еще раз

Добавлено через 3 минуты
Оп, теперь разобрался совсем, спасибо еще раз!

Добавлено через 8 минут
А есть возможность допустим на ONE Открывается картинка "1" а если ONETHREE картинка "2"?
0
Эксперт JS
2034 / 1093 / 408
Регистрация: 29.04.2016
Сообщений: 2,612
17.07.2019, 00:44 4
Moredgame, не за что

Добавлено через 11 минут
Цитата Сообщение от Moredgame Посмотреть сообщение
А есть возможность допустим на ONE Открывается картинка "1" а если ONETHREE картинка "2"?
Если нажать ONE то откроется картинка 1. Если нажать ONETHREE то откроется сначала картинка 1 а затем картинка 2- это логично так как по ONE открывается картинка 1

Можно, например, по ONE открывать картинку 1 а по, например, THREEONE открываеть картинку 2. Как-то так что бы одна последовательность не повторяла другую.

Добавлено через 3 минуты
Хотя можно сделать с задержкой в 1 или 2 секунды- но думаю что это не очень будет

Добавлено через 16 минут
https://codepen.io/Mr_Sergo/pe... itors=1010
HTML5
1
2
3
4
5
<div class="myClass">
    <button id="ONE">ONE</button>
    <button id="THREE">THREE</button>
</div>
<img id="image">
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
let str = '', timeout;
document.querySelector('.myClass').addEventListener('click',e => {
    str += e.target.id;
    if(str == 'ONE'){
        timeout = setTimeout(() => {
            image.src = 'https://www.uncloudit.com/files/1-Number-PNG%20100%20x100%20(2).png';
            str = '';
        },1000);
    }
    else if(str.match('ONETHREE')){
        clearTimeout(timeout);
        image.src = 'https://arhivurokov.ru/kopilka/uploads/user_file_5711d8dfd38a3/konspiektzaniatiiapomatiematikievsriednieighruppiestoitvpolietieriemok_7.png';
        str = '';
    }
    else{
        image.src = '';
        str = '';
    }
});
Если нажать ONE и подождать секунду то откроется картинка 1. Если нажать ONE и тут же THREE то откроется картинка 2.
0
17.07.2019, 00:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.07.2019, 00:44
Помогаю со студенческими работами здесь

При нажатии на меню, меняется цвет div
Подскажите как сделать чтобы при нажатии на заданном пункте в контекстном меню главный div менял...

Кнопка(Рисунок)при навидении и нажатии меняется
Кто может подсказать как написать данную Кнопку(Рисунок)при навидении и нажатии меняется рисунок и...

При нажатии на checkbox текст в input меняется
Есть текстовое поле в одну строку (самое обычное) и чекбокс. Нажали на чекбокс в поле написано...

Смена цвета кнопок при нажатии
Здравствуйте, У меня есть список в котором несколько кнопок. Мне нужно чтобы при нажатии на кнопку...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru