由于安全原因,以下方法不再起作用,因此我正在寻找另一种解决方案。
var win = window.open("http://www.google.com");
win.focus();
在我的主页上,用户可以打开一个弹出窗口。如果用户在主页上选择某些内容,则此弹出窗口将接收一些参数。
现在,一些用户对弹出窗口消失感到困惑。
我的想法是,一旦用户在主页上选择了某些内容,弹出窗口就会回到前面:
我的PopUpWindow.aspx页面上的页面加载事件
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
If Request.QueryString("TYPE") = "foo" Then
SetSometing(Request.QueryString("X"), Request.QueryString("Y"))
If (Not Request.QueryString("bringtToFront") = "true") Then
Dim strParams As String = "&X=" & Request.QueryString("X") & "&Y=" & Request.QueryString("Y")
Page.ClientScript.RegisterStartupScript(Me.GetType(), "myOpenWindowScript", "window.open('PopUpWindow.aspx?bringtToFront=true&TYPE=foo" & strParams & "', '_self');", True)
End If
End If
End If
End Sub
我的新代码在SetSomething之后开始。基本上,我只是重新打开了窗口。 我很确定一个星期前在Firefox 73中该解决方案就可以了,但是现在只能在Microsoft Edge中使用,我不知道为什么。弹出窗口只是不转到最前面。 在Internet Explorer中,我得到了一个单独的选项卡,但这是另一个故事。如果至少能在Firefox,Edge和Chrome上做到这一点,我将感到高兴。