window.opener 사용법 window.opener는 현재 창을 생성한 창에 대한 참조를 반환합니다. 예를 들어, a.htm의 링크를 클릭하고 b.htm을 열면, b.htm에 값을 입력하고 a.htm에서 ID가 "name"인 텍스트 상자에 할당할 계획입니다.
window.opener.document.getElementById("name")로 쓸 수 있습니다. .value = "입력 데이터";
Javascript의 window.opener에 대해 잘 이해하지 못합니다. 왜 프레임 내에서 사용할 수 없나요? 팝업 창의 상위 창이 프레임 내부 페이지에 있을 수 없는 이유는 무엇인가요? 그렇다면 팝업창을 통해 프레임 안의 부모창을 어떻게 동작시킬 수 있을까요?
opener.parent.frames['frameName'].document.all.input1.value 이것을 시도해 보세요:) 하지만 window.opener에 대해 말할 때 우리는 open이라고 말해야 합니다. 함께 사용하는 것이 가능합니다. Window.open() 지원 환경: JavaScript1.0 /JScript1.0 /Nav2 /IE3 /Opera3
기본 구문: window.open(pageURL,name,parameters) 여기서: pageURL은 하위 창 경로입니다. name은 하위 창 핸들입니다. parameters는 창 매개변수입니다(각 매개변수는 쉼표로 구분됩니다)
예:
스크립트가 실행되면 page.html이 너비 100, 높이 400, 화면 상단에서 0픽셀, 화면 하단에서 0픽셀의 새 창에 열립니다. 화면 왼쪽, 도구 모음 없음, 메뉴 표시줄 없음, 스크롤 막대 없음, 크기 조정 불가, 주소 표시줄 없음, 상태 표시줄 없음. 위의 예에는 다음과 같이 일반적으로 사용되는 여러 매개변수가 포함되어 있습니다. 다양한 매개변수 그 중 yes/no는 1/0 픽셀 값을 사용할 수도 있습니다. 픽셀 단위의 특정 값입니다. 매개변수 | 값 범위 | 설명 alwaysLowered | 예/아니요 | 지정된 창이 모든 창 뒤에 숨겨집니다. 지정된 창이 모든 창 위에 일시 중지됩니다. 예/ no | 동시에 상위 창을 닫을지 여부 디렉터리 | Nav2 및 3의 디렉터리 표시줄 표시 여부 높이 | 창 높이 단축키 | 메뉴 막대가 없는 창에서 CMD 안전 종료 단축키 innerHeight | 픽셀 값 | 창에 있는 문서의 픽셀 높이 위치에 있는 문서의 픽셀 너비 | | 위치 표시줄 표시 여부 메뉴 표시줄 표시 여부 outerHeight | 픽셀 높이 설정(장식 테두리 포함) outerWidth | 창의 픽셀 너비 설정(장식 테두리 포함) 크기 조정 가능 여부 screenX | 화면 왼쪽 가장자리부터의 픽셀 길이 screenY | 픽셀 값 | 화면 상단 가장자리부터의 픽셀 길이 스크롤바 | 예 /아니요 | 창에 스크롤 막대가 있을 수 있는지 여부 창 제목 표시줄 여부 | 표시됨 toolbar | 예/아니요 | 창 도구 모음 표시 여부 폭 | 픽셀 값 | 창의 픽셀 너비 z-look | 예/아니요 | 활성화됩니다
팝업창 제어 기능을 이용하세요 다음은 완성된 코드입니다.
모든 페이지 내용...
여기에는 openwin() 함수가 정의되어 있으며 함수 내용은 창을 여는 것입니다. 어떻게 부르나요? 방법 1:
브라우저가 페이지를 읽을 때 팝업 창이 나타납니다. 방법 2:
다음 경우에 팝업 창이 나타납니다. 브라우저가 페이지를 떠납니다. 방법 3: 연결을 통한 호출: 창 열기 참고: 사용된 "#"은 가상 연결입니다. 방법 4: 버튼을 사용하여 호출:
window.showModalDialog를 사용하지 않고 window.open을 사용하여 상위 창에 값을 반환하는 방법. 예: AAA.htm 페이지는 window.open 메소드를 사용하여 BBB.htm 페이지를 팝업합니다. BBB.htm 페이지에서 값을 선택하고 창을 닫은 후 선택한 값을 상위 창 AAA.htm으로 반환합니다. 반환된 값을 얻은 후 AAA.htm은 이 페이지의 텍스트 상자에 값을 할당합니다.
BBB.htm 페이지에 다음 코드를 추가합니다. window.opener.document.getElementById("theTextAreaId").value = document.getElemnetById("theSelectId").value
window.opener 사용법 window.opener는 현재 창을 생성한 상위 창에 대한 참조를 반환합니다. 예를 들어 a.htm의 링크를 클릭하면 b.htm이 열리고 b에 입력할 계획입니다. htm 그런 다음 a.htm에서 ID가 "name"인 텍스트 상자에 값이 할당됩니다.
window.opener.document.getElementById("name").value = "입력 데이터 " ; 자바스크립트의 window.opener에 대한 이해가 부족합니다. 为什么框架中不能使用,弹出窗口的父窗口不能在框架里面的某个页面呢?那怎样通过弹出窗口操作框架中的父窗口呢? opener.parent.frames['frameName'].document.all.input1.value 即opener这个对象为前一个窗口,可以使用window.opener.document...调用document的相关方法,例如下面的例子,插入一些table行到前一个窗口: function taletoTb(itemStr) { newRow = opener.document.all.itemTb.insertRow(opener.document.all.itemTb.rows.length); rowCnt = opener.document.all.itemTb.rows.length; newCell = newRow.insertCell(); newCell.insertAdjacentHTML('BeforeEnd','