작콩큰콩
상위 프레임 변수 가지고 오기 본문
상위 프레임 변수 가지고 오기
- 상위 프레임
function aa() {
}
let a = 1;
var b = 2;
const c = 3;
- 하위 프레임
parent.aa(); // 상위 프레임 함수 실행 가능
// 변수들의 사용 가능은 변수의 범위에 따라 결정
parent.a; // 상위 프레임 변수 사용 못함.
parent.b; // 상위 프레임 변수 사용 가능.
parent.c; // 상위 프레임 변수 사용 가능.
과정
< 상위 프레임 변수 가지고 오기 >
1.
menu.select("tree_89");
-> 실패
- 셀렉트만 되지 아래 토글이 나오지 않는다.
2.
$('button[data-dhx-id=tree_98]').click();
$('button[data-dhx-id=tree_3513]').click();
parent.$('button[data-dhx-id=tree_98]').click();
parent.$('button[data-dhx-id=tree_3506]').click();
일단 클릭하는 것에는 성공 하지만 두개 동시에 실행하면 되지 않는다.
parent.$('button[data-dhx-id=tree_98]').click(function(){
$('button[data-dhx-id=tree_3506]').click();
});
-> 실패
실행 되지 않았다.
3.
var button = parent.$('button[data-dhx-id=tree_98]')[0];
//button.dispatchEvent(new Event('click')); // 가상의 click 이벤트 발생
parent.$('button[data-dhx-id=tree_98]').click();
// 버튼에 이벤트 핸들러 등록
button.addEventListener('click', function() {
// 버튼 클릭 후 실행될 로직 작성
console.log("버튼 클릭 후 다른 함수 실행");
parent.$('button[data-dhx-id=tree_3506]').click();
});
-> 실패
콘솔은 잘 찍히는데 아직 토글이 나오지 않아서 아래 클릭이 안되었다.
4. 상위 탭바를 가져와서 넣어준다.
-> 실패
상단의 탭바를 가져올 수 없었다.
여기서 중요한 점은 함수는 잘 호출하는데 왜 변수는 못 가져오냐는 것이다.
이것은 변수의 범위와 관련된 것이다. 지금 let 으로 선언된 tabbar는 하위 프레임에서 사용할 수가 없다.
var로 선언하거나 const 로 선언하여야 전역 번수로 사용이 가능하다.
parent.tabbar.addTab({
id: "tree_3513"
,tab: "수신관리대장"
,menuSeq: "3513"
,menuUrl: "/dom/document/receiveList"
});
parent.tabbar.setActive("tree_3513"); // 탭 활성화
==>> 결국 이사님이 공통으로 생성해주시기로 함.
참고
Var, Let, Const의 차이점은?
ES2015(ES6)에서 반짝이는 새로운 기능들이 많이 등장했습니다. 2020년이 된 지금, 많은 JavaScript 개발자들이 그 기능들을 사용하기 시작했을 것이며 또 익숙해졌을텐데요. 여전히 그 중 몇몇은 일부
www.freecodecamp.org
[jQuery] iframe 접근, 제어
// iframe 접근window.frames.length; // 1window.frames[0].document; // iframe의 window의 document객체document.getElementById('iframeA'); // iframe 엘리먼트document.getElementById('iframeA').contentWindow.document; // iframe의 window의 document
yokina.tistory.com
'작은 콩 개발자 > JS' 카테고리의 다른 글
js 에서 배열 string 변환 (0) | 2023.05.25 |
---|---|
팝업창 닫을 때 부모창에 파라미터 던지기 (0) | 2023.05.23 |
JS 함수 return boolean (반복문을 지난 뒤) (0) | 2023.05.22 |
비밀번호 정규식 (0) | 2023.05.22 |
[제이쿼리/jquery] 제이쿼리 속성 (0) | 2022.02.16 |
Comments