반응형

[Tip] magnific popup을 iframe 안에서 열었을 시 문제점

 

 

제 포스팅에 자주 나와서 짐작하고 계시겠지만 

전 magnific popup을 실무에서 자주 사용하는 편입니다. 

 

반응형 팝업이란 장점 뿐만 아니라 유튜브(비디오) 팝업, 갤러리 형식, 모달까지 구현되는

편리한 점들이 많아서 자주 애용하고 있는데,

iframe 안에 플러그인 팝업을 띄우는 상황에서 문제점을 확인하였습니다. 

 

 

 

 

 

일반 페이지에서는 팝업이 자동적으로 높이를 측정하여 중앙에 팝업을 띄우는데,

iframe 안에서는 팝업이 자동적으로 높이를 측정할 수 없어 

팝업이 화면 중앙이 아닌 하단에 위치되거나 상단에 위치되거나 

그도 아니면 중앙이 아닌 부분에 위치하는 난감한 상황이 벌어지게 됩니다.

 

열심히 구글링을 하고 삽질을 하면서 겨우 찾아낸 방식은 아래와 같습니다.

 



$('클래스명').magnificPopup
  callbacks:
    open: resizeThumbnailViewer
    imageLoadComplete: resizeThumbnailViewer

resizeThumbnailViewer = ->
  $('.mfp-wrap').css({top: viewport.scrollTop(), height: viewport.height()})
  $('.mfp-img').css({'max-height': viewport.height()})

 

위 내용으로 적용하니 iframe 안에서도 중앙 정 가운데에 뜨는 것을 확인할 수 있었습니다.

혹시 몰라 하단에 출처도 남깁니다.

 

 

* 참고 : https://github.com/dimsemenov/Magnific-Popup/issues/728

 

반응형
반응형

[Tip] checkbox 초기화하기



모바일에서의 햄버거 메뉴를 구현 하는 중, 다른 페이지로 이동했다가 모바일에서 뒤로 가기를 하면 

햄버거 메뉴가 자동적으로 열리는 오류가 있었습니다.

페이지가 이동하면서 checkbox에 checked가 초기화되지 않고 자동적으로 checked되었기 때문에 발생한 오류였는데요. 

checked를 풀기 위해서는 페이지가 열릴 때마다 checkbox를 초기화하는 작업이 필요했습니다. 

꽤 여러 삽질을 거쳤는데요;; 제 경우는 아래 세 경우를 모두 적용하고 나서야 해당 오류에서 벗어날 수 있었습니다.





혹시 몰라 적용된 예시도 올려두겠습니다. 

(해당 내용은 두번째 방법을 제외한 내용이 들어 있습니다.)




1/ 별도 js 스크립트에서 초기화 내용 넣기


window.onpageshow = function(event) {
    if ( event.persisted || (window.performance && window.performance.navigation.type == 2)) {
	var chk = $("#menu__toggle").is(":checked");
	if(chk) {$("#menu__toggle").prop("checked", false).attr("checked", false).removeAttr("checked");}
    }
};



2/ index.html에 넣기 (jquery 사용)


<script>
function uncheck(){
	$(':checkbox:checked').prop('checked',false);
};
</script>
<body onLoad="uncheck()">


3/ autocomplete="off"를 넣기


<input type="checkbox" autocomplete="off">


* 첫번째 방법 참고 사이트 : https://dev-t-blog.tistory.com/9 , http://amabile29.blog.me/221548195341

* 두번째 방법 참고 사이트 : https://itbloger.tistory.com/1019

* 세번쨰 방법 참고 사이트 : http://triki.net/prgm/126

* 햄버거 메뉴 참고 사이트 : https://codepen.io/andreykrokhin/pen/mGEqja

반응형
반응형

 


 

[Visual Inspector] 디자이너를 위한 툴 비주얼 인스펙터 (Visual Inspector)


크롬을 쓰다보면 필요한 프로그램을 크롬에 직접 설치하여 쓰는 경우가 많은데,

이러한 확장 프로그램들을 쓰다보면 용량만 차지하고 쓰지는 않는 프로그램들이 있는 반면에,

편리하게 실무에서 자주 쓰게 되는 확장 프로그램들이 생기기 마련입니다.

 

비주얼 인스펙터 (Visual Inspector)가 바로 그런 프로그램인데요,
비주얼 인스펙터는 디자인 분석 툴로 웹 사이트에 적용된 위치, 불투명도, 색상, 그라디언트, 타이포 그래피 등의

구성요소를 빠르고 간편하게 확인할 수 있는 아주 편리한 툴입니다.

소개글로 디자이너가 디자인을 위해 제작되었다고 해도 과언이 아닌데요.

 

먼저 크롬에서 아래 URL로 접속하여 해당 확장 프로그램을 다운로드, 설치해줍니다.
https://chrome.google.com/webstore/detail/visual-inspector/efaejpgmekdkcngpbghnpcmbpbngoclc?hl=ko

 

 

설치가 완료되면 우측에 하늘색 눈 모양의 작은 아이콘이 생기는데,
네이버로 들어가서 해당 창을 열어보도록 하겠습니다.

 

 

창을 열고 네이버 로고를 클릭하니, 해당 위치가 한 눈에 보기 쉽게 표시가 되는데요,
(창 외의 부분은 프로그램 내에서 어두워지는 게 아니라 보기 편하게끔 제가 임의로 처리하였습니다.)

 

 

 

 

이런 식으로 위치가 확인이 가능할 뿐만아니라 각 탭에서
해당 페이지에 대한 정보를 손 쉽게 확인할 수 있고 또 변형하는 것도 가능합니다.
(변형을 한다해서 해당 페이지에 실질적으로 영향을 주지는 않습니다.)

 

 

 

 

색상 코드 확인은 물론 폰트 관련 정보도 손쉽게 알 수 있어 페이지를 서치할 때 큰 도움이 됩니다.
또한 페이지에 쓰이고 있는 이미지도 Export 버튼으로 손쉽게 다운로드도 가능합니다.

반응형