如何判断某个弹出窗口已经被打开及刷新

简介:
WEB开发中,父子窗口的操作很是常用,打开子窗口的方式有多种,多数情况下这种模式用得比较多,大家也都很熟悉,貌似一种情况相对会用得少点,google出一篇帖子,解决了一个问题,记之备忘。
 
         问题描述:window.open()出来的窗口,如何判断已经打开?如果打开,则将其设置为当前焦点窗口,并重载数据即刷新。
 
         相信各位搞开发的还是直接进入代码比较直观。
 
  var url="<c:out value="${WebRoot}"/>/.......Action.do?method=Query&entid="+entid;
  window.open(url,'list','width=800,height=600,scrollbars=yes');
 
         通常,我们都是这样直接打开窗口,但是,如果要实现描述的要求,则需要给window.open()出来的子窗口赋值。修改为:
 
  var win = window.open(url,'namethis','width=800,height=600,scrollbars=yes');
  if(win != null){
    win.focus();   
    win.moveTo(200,100);   
    win.resizeTo(560,300);  
    win.location.reload();
  }
 
          如果 win!=null 则说明此时已经打开了子窗口,if 中的前三句还原弹出的子窗口位置,最后一句则实现了刷新,这和子窗口刷新父窗口的操作是一样的:window.opener.location.reload()。
 
          顺便带一句,如何判断窗口已经最小化:
   if(w.screenTop<0){   
       alert("子窗口己最小化");   
    }  
 
            上面的操作在IE下没有问题,对TT不灵。。。

 

本文转自 august 51CTO博客,原文链接:http://blog.51cto.com/august/83011,如需转载请自行联系原作者
相关文章
|
4月前
|
JavaScript
成功解决:el-dialog弹出窗口、数据第一次没有加载、第二次打开才能加载数据。(每次页面刷新后、第一次打开dialog窗口、图片数不加载)
这篇文章分享了解决Vue中`el-dialog`弹出窗口在第一次打开时数据未加载问题的技巧,通过改变组件的`key`属性来强制Vue重新渲染DOM,从而确保数据正确加载。
成功解决:el-dialog弹出窗口、数据第一次没有加载、第二次打开才能加载数据。(每次页面刷新后、第一次打开dialog窗口、图片数不加载)
|
7月前
在viewWillAppear函数中禁止左滑,viewWillDisappear开启左滑动产生进入下一个页面来回滑动造成无法点击点击按钮问题
在viewWillAppear函数中禁止左滑,viewWillDisappear开启左滑动产生进入下一个页面来回滑动造成无法点击点击按钮问题
39 0
|
JavaScript 前端开发
【js】鼠标禁止右键禁止打开控制台及键盘禁用
前言 大家好,今天和大家分享一下在前端js中禁止鼠标在浏览器中右键,禁止鼠标选中和禁止键盘按键。 这个方法是我在制作一个单词考核系统时所使用到的,因为在考试期间如果打开控制台,通过控制台找到了正确的答案,那么就没有意义了。 所以就需要将控制台禁用,所应用到的也是一些基础的知识,下面我们就一起来看一看吧
|
Java
网页退出登录,清空session,设置登录页面的浏览器的返回按钮失效!
网页退出登录,清空session,设置登录页面的浏览器的返回按钮失效!
184 0
|
缓存 前端开发 JavaScript
网页中F5刷新与ctrl + F5强制刷新的区别?
网页中F5刷新与ctrl + F5强制刷新的区别?
网页中F5刷新与ctrl + F5强制刷新的区别?
|
JavaScript
通过js判断点击键码的值,禁用F12、复制粘贴、右键等功能
通过js判断点击键码的值,禁用F12、复制粘贴、右键等功能
181 0