웹 애플리케이션 개발 과정에서 JavaScript를 사용하여 새 창을 여는 경우가 많습니다. 그러나 때때로 사용자가 새로 열린 창만 조작할 수 있고 원본 페이지에서는 어떤 작업도 수행할 수 없기를 바랍니다. 이 경우 어떻게 설정합니까?
다음은 참고용 구현 방법입니다.
방법 1: JavaScript를 사용하여 창을 열 때 매개변수를 추가합니다
첫 번째 방법은 JavaScript를 사용하여 새 창을 열 때 매개변수를 추가하여 제어하는 것입니다. 구체적인 구현 방법은 다음과 같습니다.
window.open(url,name,'height=500,width=500,top=100,left=100,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no')
이 코드에서는 window.open
메서드를 사용하여 새 창을 엽니다. 여기서 name
은 창 이름이고 url 은 새 창의 주소입니다. 다른 매개변수 중에서 toolbar=no
, menubar=no
, scrollbars=no
, resizing=no
, location=no 및 status=no
는 각각 도구 모음, 메뉴 표시줄, 스크롤 막대, 크기 조정 버튼, 주소 표시줄 및 상태 표시줄을 숨기는 것을 나타냅니다. window.open
方法打开了一个新窗口,其中name
是窗口名称,url
是新窗口的地址。而其他参数中的toolbar=no
、menubar=no
、scrollbars=no
、resizable=no
、location=no
、status=no
则分别表示隐藏工具栏、菜单栏、滚动条、大小调整按钮、地址栏和状态条。
这样一来,用户在新窗口中只能看到当前页面的内容,其他操作都被禁用了。
方法二:通过JavaScript代码禁用其他页面
第二种方法是在新打开的窗口中,添加JavaScript代码来禁用其他页面。这种方法需要在新打开的页面中添加以下代码:
window.opener.location.href='javascript:;';
这段代码的作用是将原页面的地址修改为javascript:;
,这样用户点击原页面的任何链接都无法操作。
此外,还可以添加以下代码,使用户在打开新窗口之后,点击浏览器后退按钮时不能返回原页面:
history.forward();
方法三:通过设置事件禁用其他页面
第三种方法是添加事件,使系统在切换到新打开的窗口时,自动禁用原页面的操作。具体实现如下:
var newpage = window.open("http://www.example.com"); newpage.onfocus = function () { window.blur(); setTimeout(function () { window.focus(); }, 100); };
这段代码中,我们使用window.open
方法打开了一个新窗口,并将它保存在变量newpage
中。而newpage.onfocus
则是指当用户切换回新窗口时,自动执行的事件。我们通过window.blur()
javascript:;
로 변경하여 사용자가 링크를 클릭할 수 있도록 하는 것입니다. 원본 페이지에서 작동할 수 없습니다. 🎜🎜또한 사용자가 새 창을 연 후 브라우저의 뒤로 버튼을 클릭할 때 원래 페이지로 돌아갈 수 없도록 다음 코드를 추가할 수도 있습니다. 🎜rrreee🎜방법 3: 이벤트를 설정하여 다른 페이지를 비활성화🎜🎜세 번째 방법은 이벤트를 추가하여 새로 열린 창으로 전환할 때 시스템이 자동으로 원본 페이지의 작동을 비활성화하도록 하는 것입니다. 구체적인 구현은 다음과 같습니다. 🎜rrreee🎜이 코드에서는 window.open
메서드를 사용하여 새 창을 열고 이를 newpage
변수에 저장합니다. 그리고 newpage.onfocus
는 사용자가 새 창으로 다시 전환할 때 자동으로 실행되는 이벤트를 의미합니다. window.blur()
메서드를 통해 원본 페이지를 비활성화한 다음 100밀리초 후에 창에 다시 초점을 맞춥니다. 🎜🎜요약🎜🎜위는 새로 열린 창을 제어하여 원래 웹 페이지가 아닌 해당 창만 작동하도록 제어하는 방법입니다. 다양한 방법에는 서로 다른 장점과 단점이 있습니다. 이를 사용할 때 실제 필요에 따라 적절한 방법을 선택할 수 있습니다. 🎜위 내용은 자바스크립트 창이 열린 후, 창 안의 다른 페이지만 조작 가능하고 이동이 불가능하도록 설정하는 방법은 무엇인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!