关闭弹出窗口

时间:2013-01-02 16:36:12

标签: javascript popup

我有一个弹出窗口,使用以下代码打开:

function _openpageview(fieldid,objectid,opennew)
{
var url='/s_viewpagefield.jsp?fieldid='+fieldid+'&codedid='+objectid;

  web_window = window.open(url,'_blank', 'menubar=yes,location=no,scrollbars=yes,width=800,height=600,status=no,resizable=yes,top=0,left=0,dependent=yes,alwaysRaised=yes');
   web_window.opener = window;
   web_window.focus();


}

如何从弹出窗口中关闭该弹出窗口?

window.close();
self.close();
web_window.close();

一切都行不通了

7 个答案:

答案 0 :(得分:22)

老提示......

var daddy = window.self;
daddy.opener = window.self;
daddy.close();

答案 1 :(得分:6)

您只能使用使用javascript打开的javascript关闭窗口,即使用以下命令打开窗口时

window.open

然后

window.close

会奏效。否则不是。

答案 2 :(得分:2)

当您尝试关闭窗口时,您的web_window变量必须超出范围。将此行添加到您的_openpageview函数中以进行测试:

setTimeout(function(){web_window.close();},1000);

答案 3 :(得分:2)

对于这种看似简单的事情,这可能是屁股上的皇家痛苦!我找到了一种效果很好的解决方案(class =“ video-close”显然是此按钮和可选按钮所特有的)

 <a href="javascript:window.open('','_self').close();" class="video-close">Close this window</a>

答案 4 :(得分:1)

在我的情况下(joomla 打开弹出窗口)我不得不使用这个:

{
      products.map((val, i)=>(
        <div className="product_item">
           {
            val.productType === 'chicken'?
              <>
              <img src={img2}></img>
              <p className="product_data">Chicken Name: {val.chickeName}</p>
              <p align="left" className="product_data">weight: 500gm</p>
              <p align="left"className="product_data">₹{val.price}/- <button onClick={addTocartProduct}>ADD</button></p>
              </>: null
           }
        </div>
     ))
   }

希望可以帮到你

答案 5 :(得分:0)

试试这个

  if(false == web_window.closed)
  {
     web_window.close ();
  }

答案 6 :(得分:0)

在我的情况下,我只需关闭弹出窗口并在阅读完消息后点击“确定”时将用户重定向到他的个人资料页面 我尝试了几个hacks,包括setTimeout + self.close(),但是对于IE,这是关闭整个标签......

解决方案: 我用一个简单的提交按钮替换了我的链接。
<button type="submit" onclick="window.location.href='profile.html';">buttonText</button>。 没什么。

这可能听起来很愚蠢,但我没想到这么简单的解决方案,因为我的弹出窗口没有任何形式。

我希望它能帮助像我一样的前端新手!