집 >
웹 프론트엔드 >
JS 튜토리얼 >
새로운 form_javascript 기술이 나타나는 showModalDialog를 방지하는 이유 분석
새로운 form_javascript 기술이 나타나는 showModalDialog를 방지하는 이유 분석
WBOY
풀어 주다: 2016-05-16 18:26:03
원래의
906명이 탐색했습니다.
showModalDialog 및 showModelessDialog
1. showModalDialog와 showModelessDialog의 차이점은 무엇입니까? showModalDialog: 열린 후에는 입력 포커스가 항상 유지됩니다. 대화 상자를 닫지 않으면 사용자는
기본 창으로 전환할 수 없습니다. 경보의 작동 효과와 유사합니다. showModelessDialog: 열린 후 사용자는 입력 포커스를 무작위로 전환할 수 있습니다. 기본 창에는 아무런 영향을 미치지 않습니다(최대한
차단되어 잠시 동안 유지됩니다.
2. showModalDialog 및 showModelessDialog의 하이퍼링크가 새 창에 표시되지 않도록 하려면 어떻게 해야 합니까? 차단된 후 열린 웹 페이지에 를 추가하면 됩니다. 이 문장은 일반적으로
사이에 배치됩니다. 3. showModalDialog 및 showModelessDialog의 콘텐츠를 새로 고치는 방법은 F5를 눌러도 새로 고칠 수 없나요? 메뉴 팝업은
javascript에만 의존할 수 있습니다. 다음은 관련 코드입니다:
reload..
filename.htm을 웹 페이지 이름으로 바꾸고 F5를 눌러 새로 고치세요. 와 일치해야 합니다. 그렇지 않으면 F5를 누르면 새 창이 나타납니다.
4. showModalDialog(또는 showModelessDialog)를 사용하여 열린 창을 닫는 방법 도 사용해야 합니다. , 그렇지 않으면 새 IE 창이 열렸다가 닫힙니다.
5. showModalDialog 및 showModelessDialog의 데이터 전송 기술 (작성자: 원래는 질문과 답변 형식으로 작성하려고 했습니다. , 그런데 이걸 어떻게 물어야 할지 모르겠어서 이렇게 해야 합니다. ) 이게 여러 번 바꿔서 설명할 수 없어서 더 번거롭습니다. )이므로 예를 들어 설명해야 합니다. 예: 이제 showModalDialog(또는 showModelessDialog)에서 var_name 변수를 읽거나 설정해야 합니다.
일반 전달 방법: window.showModalDialog("filename.htm", var_name) //showModalDialog(또는 showModelessDialog)에서 읽고 설정할 때 var_name 변수 전달 : alert(window.dialogArguments)//var_name 변수 읽기 window.dialogArguments="oyiboy" //var_name 변수 설정 이 방법은 만족스럽지만, var_name을 조작하면서 두 번째 변수인 var_id를 조작하고 싶다면 어떻게 해야 할까요? 이것이 이 배송 방법의 한계입니다.
제가 추천하는 전달 방법은 다음과 같습니다. window.showModalDialog("filename.htm",window) //어떤 변수를 조작하든 관계없이 window 객체를 전달하면 됩니다. 메인 창에서 직접 showModalDialog(또는 showModelessDialog)에서 읽고 설정하는 경우: alert(window.dialogArguments.var_name)//var_name 변수 읽기 window.dialogArguments.var_name="oyiboy"//Set var_name 변수
동시에 var_id 변수도 조작할 수 있습니다 alert(window.dialogArguments.var_id)//var_id 변수 읽기 window.dialogArguments.var_id="001" //var_id 변수 설정
양식 개체의 요소와 같이 기본 창의 모든 개체에 대해 작업을 수행할 수도 있습니다. window.dialogArguments.form1.index1.value="index1 요소의 값을 설정하는 것입니다."
6. 여러 showModelessDialog의 상호 작용. 그냥 얘기하기가 너무 힘들어서 그냥 코드로 설명하면 이해가 안가시면 직접 메일로 보내주세요(oyiboy#163.net( #을 @로 바꿔주세요))문의해주세요.
다음 코드의 주요 기능은 showModelessDialog 내에서 다른 showModelessDialog의 위치를 이동하는 것입니다.
메인 파일의 js 코드 일부. var s1=showModelessDialog(''control.htm'',window,"dialogTop:1px;dialogLeft:1px") //컨트롤 열기
컨트롤 창 var s2=showModelessDialog(' ' about:blank'',window,"dialogTop:200px;dialogLeft:300px")
//제어된 창 열기
.htm 코드의 제어 부분입니다.
가변 접근 방식: window.dialogArguments.s2.dialogTop language=javascript>parent.window.opener=null;parent.window.dialogArguments.location.reload ();window.close();"); 或者 function doModal(url){ win=window.showModalDialog (url,0,"dialogWidth:500px;dialogHeight:500px;status:no;help:no;"); document.location.reload();//js页面中加入这句话就行了