Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Закрытие модального окна по клику (https://javascript.ru/forum/dom-window/78435-zakrytie-modalnogo-okna-po-kliku.html)

Stas1985 14.09.2019 06:46

Закрытие модального окна по клику
 
Помогите пожалуйста сделать закрытие модального окна по клику за пределами самого окна.
Пациент _https://update.lik-astana.kz/#devepmen-mira
Модальное окно на чистом css, как я понял сделать это можно только при помощи JS. Подскажите пожалуйста как это можно сделать. В JS не селен и по этому задаю такой вопрос.
Спасибо!

рони 14.09.2019 10:33

Stas1985,
добавить
<script>
jQuery(function() {
jQuery(document).on("click", function(event){
	 if(event.target.id == "devepmen-mira") {
       location.hash = "";
       history.replaceState(null, null, ' ');
	 }
		});
});
  </script>

Stas1985 18.09.2019 09:57

рони Спасибо скрипт работает.
Подскажите еще как сделать чтоб при нажатии за пределами поля окно просто закрылось. Сейчас при нажатии происходит скрол вверх

Stas1985 18.09.2019 14:47

Попробовал так
<script>
	jQuery(function() {
	jQuery(document).on("click", function(event){
	     if(event.target.id == "devepmen-barselona") {
	       location.hash = " ";
	       history.replaceState(null, null, null, '');
	     }
	        });
	});
	  </script>

теперь к ссылке добавляет /#%20
вот полная ссылка _https://update.lik-astana.kz/#%20

рони 18.09.2019 15:34

Stas1985,
вариант от Malleys,
попробуйте вместо скрипта, добавить в css

a.gameos::after {
	content: "";
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}

Stas1985 19.09.2019 09:15

сделал так
<script>
	jQuery(function() {
	jQuery(document).on("click", function(event){
	     if(event.target.id == "devepmen-kubrina") {
	       location.hash = '#gameos';
	       history.replaceState(null, null, null, ' ');
	     }
	        });
	});
</script>

вроде все работает.

Signal 29.09.2019 18:02

css лучше как и сказал Stas1985


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