삼항연산자
var a = ( 조건문 ) ? b : c ;
조건문이 true일때 b가 담기고, 조건문이 false일때 c가 담긴다.
if 조건문
if (a>b) {
c =10;
} else {
c= 20;
}
조건 (삼항)연산자
(a > b) ? c=10 : c=20;
html DOM 내에 iframe이 있고, 그 안에서 html 을 로드할 경우
페이지 내에 iframe이 있고, 그 안에 html페이지가 로드할 경우 사용
if 조건문
if ($('#iframe', parent.document).length > 0){
var targetFrameContent = $('#iframe', parent.document).get(0);
if (targetFrameContent.contentDocument) {
targetFrameContent.contentDocument;
} else {
targetFrameContent.contentWindow.document;
}
('#iframe', parent.document).css({"height" : (targetFrameDocContent.body.scrollHeight + 17) + "px"});
}
조건 (삼항)연산자
if ($('#iframe', parent.document).length > 0){
var targetFrameContent = $('#iframe', parent.document).get(0);
var targetFrameDocContent = (targetFrameContent.contentDocument) ? targetFrameContent.contentDocument : targetFrameContent.contentWindow.document;
$('#iframe', parent.document).css({"height" : (targetFrameDocContent.body.scrollHeight + 17) + "px"});
}
삼항연산자를 사용하여 코드라인이 줄어드는 장점이 있으나
가독성이 떨어 질 수 있으므로 증복처리는 피하는 것이 좋다.
-
if ($('#iframe', parent.document).length > 0){ ... }
- #iframe(자식요소)의 parent.document (iframe의 부모요소) 길이가 0보다 클 때 실행
- var targetFrameContent = $('#iframe', parent.document).get(0);
- #iframe(자식요소)의 parent.document(iframe의 부모요소)에서 첫번째 인덱스(0)를 가져와 targetFrameContent 에 대입
- $(selector).get(index); : 선택한 요소를 배열의 (index)번째로 가져온다.
- (targetFrameContent.contentDocument) ? targetFrameContent.contentDocument : targetFrameContent.contentWindow.document ;
- contentDocument 프로퍼티 : iframe에 의해 생성된 document 객체
- contentWindow 프로퍼티 : iframe에 의해 생성된 window객체
- true 일때 .contentDocument : document 객체
- false 일때 .contentWindow.document : window의 document 객체
- $('#iframe', parent.document).css( { "height" : (targetFrameDocContent.body.scrollHeight + 17) + "px" });
#iframe의 부모페이지
scrollHeight의 픽셀(pixel)
scrollHeight는 읽기 전용 속성
참고 링크
iframe 부모 자식 접근
부모 함수 호출 시 parent.함수명 부모 요소 접근 시 $(parent.document).find('셀렉터') 부모 요소 접근 시 window.parent.document.getElementById('요소아이디') 자식 함수 호출 시 document.getElementById('..
strangelight.tistory.com
https://mylife365.tistory.com/10
[jQuery] iframe 접근, 제어
// iframe 접근 window.frames.length; // 1 window.frames[0].document; // iframe의 window의 document객체 document.getElementById('ifra..
mylife365.tistory.com
https://zeronica.tistory.com/80
jquery iframe 부모에 접근하기
아이프레임에서 부모의 노드에 속성을 변경할때는 아래의 방법을 사용한다. $(top.document).find("부모의 노드 아이디나 클래스").attr("height","500"); case 1. $('#id', parent.document) iframe에서 사용시 i..
zeronica.tistory.com
'UXUI Development > Javascript' 카테고리의 다른 글
API 문서 자동화 도구 (0) | 2021.12.14 |
---|---|
javascript 동적로딩 (0) | 2019.06.12 |
script 내에 script호출 (0) | 2019.06.12 |
html안에 html 로드 스크립트 분기처리 (0) | 2019.06.12 |
자바스크립트 (0) | 2019.05.29 |
날짜 분기 스크립트 (0) | 2019.05.29 |
여러개의 스크롤이벤트 사용시 (0) | 2019.03.19 |
Ajax(Asynchronous Javascript And XML) (0) | 2018.03.27 |