Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Одно событие на два разных элемента (https://javascript.ru/forum/misc/73210-odno-sobytie-na-dva-raznykh-ehlementa.html)

aksak1988 29.03.2018 12:04

Одно событие на два разных элемента
 
Привет всем.
Имеется: при клике на button с id="call" открывается модальное окно, а при клике на значок крестика с классом class="modal-close" окно закрывается.

Можно ли совместить событие click(), чтобы это выглядело более красиво? Или иным способом сократить код и улучшить его вид?

$('#call').click(
			function() {
				$('.call-modal').fadeIn();
			}
		)

	$('.modal-close').click(
			function(){
				$('.call-modal').fadeOut();
			}
		)

j0hnik 29.03.2018 12:16

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

j0hnik 29.03.2018 12:17

функцию лучше пустую уберите.

рони 29.03.2018 12:28

aksak1988,
$('#call, .modal-close').click(function() {
        $('.call-modal').fadeToggle()
}
    )

aksak1988 29.03.2018 12:56

То что надо! Спасибо!

aksak1988 29.03.2018 13:00

А если такой случай, то как быть?

$('#call').click(
			function() {
				$('.call-modal').fadeIn();
				$('.text-block').html('Какой-то текст');
			}
		)

	$('.modal-close').click(
			function(){
				$('.call-modal').fadeOut();
				$('.container').addClass('.show');
			}
		)

aksak1988 29.03.2018 13:05

Цитата:

Сообщение от j0hnik (Сообщение 481776)
функцию лучше пустую уберите.

Спасибо, убрал. Пока копировал фрагмент, забыл ее убрать.

aksak1988 29.03.2018 13:09

Цитата:

Сообщение от j0hnik (Сообщение 481776)
функцию лучше пустую уберите.

Кстати, на счет пустой функции, то как быть в этом случае?

$('.block').hover(
			function(){
				/**/
			},
			function(){
				$('.link').fadeOut();
			}
		)


Т.е нужно чтобы некий блок (например, .link) исчезал, когда курсор мыши пользователь уводит с блока (например, .block)

рони 29.03.2018 13:13

Цитата:

Сообщение от aksak1988
когда курсор мыши пользователь уводит с блока

mouseleave


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