【问题标题】:Client Side Event when child window is changing parent location?子窗口更改父位置时的客户端事件?
【发布时间】:2009-05-13 14:42:55
【问题描述】:

好的,这就是交易:

目前我们有一个调用弹出窗口的页面,并且该弹出窗口中有一个链接将父页面重定向到另一个位置。一切正常。

当前:产品页面 弹出窗口

但是,我正在创建一个新功能,其中主页调用一个新的子窗口以获取产品详细信息。然后该产品详细信息页面具有指向上述弹出窗口的链接。问题是弹出窗口现在将子窗口视为其父窗口,并且重定向发生在那里而不是在主浏览器窗口中。

开发:主站点 --> 儿童产品详情 弹出窗口

在重定向发生之前我可以在产品详细信息子项中捕获一个事件,以便我可以将其传递到下一个级别吗?

TIA

凯文

编辑:发现这个:

http://www.bennadel.com/blog/1520-Binding-Events-To-Non-DOM-Objects-With-jQuery.htm

但这只是通知您在位置发生变化...

【问题讨论】:

    标签: javascript dom popup client-side


    【解决方案1】:

    这就是我最终做的......

    function smartRedirect(newlocation)
    {
        if (window.opener == window.opener.parent)
        {
            // main window opened us...
            window.opener.location.href = newlocation;
        }
        else
        {
            // must have been a child window... so change parent, then close this one...
            window.opener.parent.location.href = newlocation;
    
            // this is needed because when the child window/frame is killed,
            // window.opener becomes null.
            self.close();
        }
    }
    

    【讨论】:

    • 我也面临同样的问题,但这不适用于 chrome。
    猜你喜欢
    • 1970-01-01
    • 2021-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-10
    • 1970-01-01
    相关资源
    最近更新 更多