javascript判断是不是有父窗口

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript判断是不是有父窗口相关的知识,希望对你有一定的参考价值。

我通过javascript实现刷新父窗口,
但是在判断是否有父窗口时,没有效果
if (window.opener.location !="")

window.opener.location.reload();

请问如何能判断是否存在父窗口,谢谢。
多谢2位帮忙!

刷新父窗口:
parent.reload();

这个判断父窗口是否存在我不明白你的意思。

你的意思是不是打开本窗口之后判断父窗口是否关闭了呢?
如果是,看以下代码:
if(opener) if(opener.closed == false) //父窗口没有关闭
else//关了
参考技术A if(opener)
if(typeof(window.opener.document)==’unknown’||typeof(window.opener.document) == ’undefined’)
//父窗口已关闭
else
//父窗口没有关闭

else
//父窗口已关闭

参考资料:http://www.yourblog.org/Data/200611/493541.html

本回答被提问者采纳

QWebView,如何判断此链接是不是为新窗口?

【中文标题】QWebView,如何判断此链接是不是为新窗口?【英文标题】:QWebView,How to determine whether this link is a new window?QWebView,如何判断此链接是否为新窗口? 【发布时间】:2012-11-06 01:54:23 【问题描述】:

代码

  News::News(QWidget *parent) :
   QDialog(parent),
  ui(new Ui::News)
  
   ui->setupUi(this);
   ui->webView->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
   connect(ui->webView,SIGNAL(linkClicked(QUrl)),this,SLOT(openUrl(QUrl)));
  

void News::openUrl(QUrl url)
  if(the new window)
        QDesktopServices::openUrl(url);
  else
    ui->webView->load(url);
  

如何判断不是新窗口链接函数openUrl? 我将如何编写这段代码、? 谢谢!!!

【问题讨论】:

【参考方案1】:

您需要从 QWebView 继承您自己的类并重新实现 createWindow() 方法。 http://doc.qt.digia.com/qt/qwebview.html#createWindow

【讨论】:

新窗口时,如何获取URL? 不太清楚“何时出现新窗口”是什么意思。 QWebView 会将正在打开的 URL 设置为您返回指针的 QWebView。如果您需要知道 URL,您可以捕获在页面加载期间发出的 QWebPage 信号之一并查询 URL。 我需要做一个浏览器,点击url现在所有负载处理。如何更好地处理? 或 我刚刚告诉过你。重新实现 createWindow()。在重新实现的方法中构造一个新的 QWebView 实例。为它调用 show()。返回指针。 QWebView 会自动设置你返回的 QWebView 的 URL。 谢谢,我正在尝试 WebPage::acceptNavigationRequest 和 WebPage::createWindow。

以上是关于javascript判断是不是有父窗口的主要内容,如果未能解决你的问题,请参考以下文章

用javascript从子窗口向父窗口的SELECT列表添加OPTION选项

用JavaScript判断某个时间距离现在是几秒或几分或几小时等等的效果

Qt - QDialog,QWidget实现模态及非模态(模态Widget不能有父窗口,如果设置无边框就不能阻塞父窗口,但是可以强行设置指定Qt::Dialog,还可以setAttribute(Qt:

面向对象的进阶---反射--一些内置方法

JavaScript入门

js实现多级复选框的交互