안녕하세요 ! not 연산자와 false true 의 사용법이전혀모르겟어서질문드려요 채택완료
안녕하세요 학원에서 모바일 네비게이션창 보이게하는 구문을 연습하다가 궁금증이생겨올려봅니다
var am_show = false; $('#m_menu').click(function(){ am_show = !(am_show); if(am_show){ $('#mb_navi,#navi_bg').show(); }else{ $('#mb_navi,#navi_bg').hide(); $('#sm_menu > li > a').removeClass('selected'); $('#sm_menu > li > .sub_navi').slideUp('fast'); } }); $('.close').click(function(){ am_show = false; $('#mb_navi,#navi_bg').hide(); });
//창의 크기가 768px 이상일때 모바일 메뉴 안보이게 처리
$(window).resize(function(){ if($(this).width() >= 768){ am_show=false; $('#mb_navi,#navi_bg').hide(); $('#sm_menu > li > a').removeClass('selected'); $('#sm_menu > li > .sub_navi').slideUp('fast'); } }); 여기서 왜 굳이
am_show = false; <-- 이걸 거짓으로 줘야되는거며 am_show = !(am_show); <-- 얘는왜 다시 거기앞에 !연산자를줘서 true로 만들어준건가요
또 혹시 이런 개념을 잡는방법은 책읽어보기외에 다른좋은방법이있으면 소개해주시면 감사하겠습니다!
답변 3개
am_show = flase;
-> 기본적으로는 안 보이게 한거고요.
$('#m_menu').click(function(){ am_show = !(am_show);
-> 메뉴 클릭시 현재 상태에 반대로 되게 한겁니다.
-> 닫혀 있으면 열리게, 열려 있으면 닫히게..
$('.close').click(function(){ am_show = false;
-> 닫기 메뉴 클릭시는 안 보이게 한겁니다.
답변에 대한 댓글 2개
true로 줘도 관계 없습니다.
false를 주면 내비가 안보이는 상태로 세팅이 되는거고..
true를 주면 보이는 상태로 뜨니까.. 개발자 맘인거죠^^;
댓글을 작성하려면 로그인이 필요합니다.
port님 말씀처럼 프로그래머 마음인거고요.
false로 했다는건 menu에 css에 display : none 으로 설정이 되어 있을꺼 같은데요.
많약 true로 했다면 menu도 보이도록 해두셔야 겠죠 ^^;;
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
근데요 그럼 false로 줬기때문에 처음부터 네비가 안보이게된다는 말씀이신건가요
그게아니라면
변수값을 지정할때
var am_show=false 로 줬는데
구지그걸 왜 true를 주면 안되고 false로 줬는가가 모르겠어요..