Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Не работает код в jquery, вероятно что то сделал не так... (https://javascript.ru/forum/dom-window/65310-ne-rabotaet-kod-v-jquery-veroyatno-chto-sdelal-ne-tak.html)

Fomax 12.10.2016 12:00

Не работает код в jquery, вероятно что то сделал не так...
 
рабочий код (при клике на кнопку - всплывает окно, при клике в области вне основного окна - оно исчезает):

var ButtonForRegLog = document.getElementById('login');
var MainModal = document.getElementById('F_ModalBackground');
var BodyOverflow = document.getElementsByTagName('body')[0];

ButtonForRegLog.onclick = function(){
	MainModal.style.display = "flex";
	BodyOverflow.style.overflow = "hidden";
}
window.onclick = function(event){
	if(event.target == MainModal){
		MainModal.style.removeProperty('display');
	}
}



Написал тоже самое на jquery, теперь при нажатии на кнопку оно появляется, не не исчезает обратно при клике вне области.

$(document).ready(function(){
	
	$("#login").click(function(){$("#F_ModalBackground").css("display","flex")});
	$(window).click(function(event){if(event.target == $("#F_ModalBackground")){$("#F_ModalBackground").css("display","")}});
	
});

Dilettante_Pro 12.10.2016 12:10

Fomax,
А как насчет .css("display","none") ?

Fomax 12.10.2016 12:11

ничего не меняется, проблема точно не здесь, не срабатывает событие почему то

Dilettante_Pro 12.10.2016 12:31

Fomax,
if(event.target != $("#F_ModalBackground")
а то вы событие в окне опять примеряете на тот же блок


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