Javascript 在 window.open 之后调用函数

2024-04-04

我试图在 window.open 函数完全加载后调用一个函数。

然而,使用 onload 函数调用得太早了。所点击的 URL 将打开一个 Excel 电子表格,下载可能需要 2 秒到 1 分钟。

一旦 window.open 函数被调用,onload 函数就会被调用。但是,我需要知道 Excel 文档何时打开 - 而不是何时点击 URL。

我尝试设置一个时间间隔,但没有被调用:

w = window.open(url,'_parent',false);   

w.onload = function(){
    console.log('here');
    setInterval(function(){
        alert('Hi');
    },10);

首先请注意,为了执行此操作而不因跨域限制而被阻止(或者不必在服务器上参数化 CORS 标头),您必须:

  • 从同一域和同一端口提供主页和弹出内容(您的 Excel 文件)
  • 打开您的主页http://并且不在file://

如果满足这些条件,最好的解决方案是使用 jquery 作为其load http://api.jquery.com/ready/函数等待“直到所有资产(例如图像)已完全收到”:

<html>
    <head>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    </head>
<body>
<script>
var popup = window.open('popup.html');
$(popup.document).load(function() {
    alert('loaded');
    // do other things
});
</script>
</body>
</html>

请小心您的全局方案:当您认为它们“打开”文件时,每个浏览器/配置可能会执行不同的操作。没有办法用简单的方法来检测open如果他们决定放弃它,因为没有合适的插件,只需下载它即可。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Javascript 在 window.open 之后调用函数 的相关文章

  • 将元素追加到 Angular QueryList

    有没有办法将新元素追加到 QueryList 中 例如 我有一个像这样的查询列表 ContentChildren SysColumn syscolumns QueryList
  • 停止所有 JavaScript 执行

    是否有一个相当于 php die 函数的 javascript 可以停止所有 javascript 包括将来的 ajax 请求回调 超时等 运行 注意 我无法在调试器中使用断点 因为 bug 存在于 ie8 中 并且调试器会阻止您在断点处向
  • 无法安装组件:模板或渲染函数未定义。组件导入失败

    我正在尝试复制 vue 教程示例 在这里找到 https v3 vuejs org guide component basics html passing data to child components with props https
  • 无法使用服务帐户查询 Google Search Console API

    我需要使用服务帐户从 Google Search Console 网站管理员工具 检索一些数据 到目前为止我已经能够检索到access token对于我需要附加到请求的 url 的服务帐户 问题是我找不到办法这样做 这是我正在使用的代码 f
  • 选择容器中的最后一个单词

    我只是想知道是否有办法选择 DIV 中的最后一个单词 我认为没有任何明显的方法可以做到这一点 那么有什么解决方法吗 我不介意使用 CSS 或 Javascript 来实现这一点 提前致谢 div or no div 它归结为基本的字符串操作
  • 使用 MathJax 排版/渲染动态内容

    我使用 MathJax 来显示数学方程 它在静态编写的数学中运行良好 但不适用于动态添加的数学 这是我的代码 Static div span x b pm sqrt b 2 4ac over 2a span div Dynamic div
  • HTML 表格换行列

    我有一个表 用户将数据输入到列中 每次用户输入数据时都会创建一个新列 一段时间后 他们有大量的专栏 我需要它们换行 我知道如何将文本换行在列内 但我需要将整个列换行在第一列下方 依此类推 您不应该为此使用表格 您应该使用具有 float l
  • JavaScript 动态变量名称[重复]

    这个问题在这里已经有答案了 好吧 我想在用户单击时创建变量 每次单击都会添加一个新变量 我目前正在使用 jquery 和 javascript 我无法在服务器端执行此操作 这必须在浏览器中完成 newCount document getEl
  • 如何确定输入的模式是“Int,VarChar,Date,Time ...”等

    我有一个下拉菜单 其中包含DataType 和一个文本框 这是用于输入的Regex Pattern 如果我进入 test 在文本框中 或从下拉菜单中选择Int 如果在文本框中输入 则其模式是错误的 0 9 那么它的correct patte
  • 如何将参数传递给backbone.js 中事件对象中绑定的函数

    我需要为 Backbone 中的事件对象中使用的函数提供参数 var DocumentRow Backbone View extend tagName li className document row events click icon
  • 窗口位置替换 - 超时帮助? JavaScript问题

    我曾尝试找到一种方法 在我的代码中添加超时 然后再重定向您 我用谷歌搜索并找到了一些帮助 但他们都没有达到我的预期 这会提示用户出生年份并计算年龄 大致 如果用户未满18岁 则带他们去迪士尼乐园 否则允许进入 函数年龄按钮 var AskD
  • 从字符串中提取所有链接

    我有一个 javascript 变量 其中包含页面的 HTML 源代码 不是当前页面的源代码 我需要从该变量中提取所有链接 关于什么是最好的方法的任何线索 是否可以为变量中的 HTML 创建一个 DOM 然后遍历它 我不知道这是否是推荐的方
  • 如何使用 Angular/Ionic/JS 显示 Motion JPEG 二进制数据流?

    我正在为设备编写应用程序 此类设备将收到 POST 请求 并发回multipart x mixed replace二进制数据流 我必须在我的应用程序主页的一部分上显示此类流 我查了一下 这种情况的资源非常有限 到目前为止 我发现如果 Mot
  • 为什么 JavaScript 原型属性在新对象上未定义?

    我对 JavaScript 原型概念还很陌生 考虑以下代码 var x function func x prototype log function console log 1 var b new x 据我了解 b log 应该返回 1 因
  • javascript 中的独立括号[重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 为什么使用匿名函数包装器 https stackoverflow com questions 1643321 javascript why the anonymous funct
  • JavaScript 使用多少位来表示数字?

    JavaScript 使用多少位来表示数字 一般JS实现使用64位双精度浮点数 对 32 位整数执行按位运算
  • Redux Spread 运算符与 Map

    我有一个数组中的对象状态 在我的 ReduxReducer 中 const initialState items id 1 dish General Chicken price 12 1 quantity 0 id 2 dish Chick
  • 如何通过 JQuery Post 传递 Javascript 数组,以便可以通过 PHP $_POST 数组访问其所有内容?

    如何通过 JQuery Post 传递 Javascript 数组 以便可以通过 PHP POST 数组访问其所有内容 请展示一个可以实现此目的的代码示例 Thanks 如果你想传递一个 JavaScript 对象 哈希 即 PHP 中的关
  • 将文本字段输入限制为仅数字

    我搜索过谷歌 但我能找到的所有解决方案都非常复杂和冗长 我需要的是将我正在进行的调查中的文本字段的输入限制为仅数字 最快 最干净的方法是什么 我使用的是严格的 HTML 4 01 和 ECMAScript 提前致谢 最快
  • Three.js - 将 WebGL 和 CSS3D 与 iFrame 混合

    我准备了一个混合的工作页面WebGL and CSS3D 在SO的一点帮助下here https stackoverflow com questions 24681170 three js properly blending css3d a

随机推荐

  • 如何从 Angular 范围中排除元素?

    我的前提是错误的 虽然 AngularJS 确实减慢了速度 但这并不是因为我下面描述的问题 然而 正是 flim 对我的问题 如何从 Angular 范围中排除元素 的回答才证明了这一点 我正在构建一个网站 该网站使用 d3 Raphael
  • PhoneGap iOS 7 和 localStorage

    我目前正在构建一个 PhoneGap 3 3 0 iOS 应用程序 该应用程序使用 Ember js EmberData 和 LocalStorage 适配器来保存数据 读了一些文章后就像这个 StackOverflow 问题 https
  • 集合接口和WCF

    我正在使用 C 和 WCF 来做 Web 服务 我有一个实现 IEnumerable 的类的成员变量 我尝试通过执行以下操作将其序列化为我的数据合同的一部分 DataContract class Item DataMember privat
  • 约束消失的情况:更高等级类型的怪异

    下面描述的所有实验都是使用 GHC 8 0 1 完成的 这个问题是后续问题具有类型别名混淆的 RankNTypes https stackoverflow com q 40252867 2751851 那里的问题归结为像这样的函数类型 LA
  • 获取 i18next 翻译器 缺少密钥

    这是我第一次使用 i18next 我不知道如何让它发挥作用 这似乎是文档 http i18next com docs 对我来说是不完整的 这是我使用 i18next 的 HTML 代码
  • JDBC无法在openshift上连接mysql数据库

    我设法使用 phpMyAdmin 等在 OpenShift 上设置 MySQL 数据库 我被告知我的数据库的主机名和端口分别是 OPENSHIFT MYSQL DB HOST 和 OPENSHIFT MYSQL DB PORT 我将其放入
  • 多次借用的借用错误

    我正在 Rust 中实现一个就地递归解析器 但遇到了一些借用错误 代码片段重现了问题 尽管它不是很有用 use std vec Vec struct MyBorrows lt a gt val a mut i32 impl lt a gt
  • com.fasterxml.jackson.databind.exc.InvalidTypeIdException:无法将类型 id '[' 解析为子类型

    我有一个名为 Fruit 的抽象类 我把 JsonTypeInfo and JsonSubTypes其如下 JsonTypeInfo use JsonTypeInfo Id NAME include JsonTypeInfo As PROP
  • 如何让ListView在转换到另一个路线时保留其滚动?

    我想在我的颤动应用程序中完成滑动到右侧的转换 问题是路线转换有点创建我想要从中转换的页面的新实例 所以ListView滚动重置 看视频 https youtu be PdLhyvNoU8 这就是我创建新路线的方式 oldRoute need
  • dompdf 图像不是真实图像,无法读取或为空

    我在使用 dompdf 时遇到问题 我插入的图像在转换为 pdf 文件时无法读取 当我使用将其加载到 dompdf 时 php方法 img src gt 我得到一个带有 X 的方框缩略图 它说 图像不是真实图像 不可读或为空 用文本打印我的
  • Nodejs JOIN 查询:格式化 JSON 输出

    我正在制作一个非常简单的 RIGHT JOIN 查询 但我无法正确格式化输出 这是查询 connection query sql SELECT users rides FROM users RIGHT JOIN rides ON users
  • 需要帮助 Discord 机器人队列

    我一直在尝试为不和谐机器人和我的 gt q命令基本上工作为join play queue同时 问题是它只能同时对 2 首歌曲进行排队 所以我需要帮助使其对多首歌曲进行排队 queues check queue def check queue
  • 重复 data.frame 的每一行列中指定的次数

    df lt data frame var1 c a b c var2 c d e f freq 1 3 扩展上面 data frame 的每行前两列 以便每行重复 freq 列中指定的次数 最简单的方法是什么 换句话说 从这里开始 df v
  • 如何将 Twitter 配置移出控制器? (导轨)

    我正在使用推特宝石 https github com sferik twitter通过斯费里克 我认为在控制器中存储我的 Twitter 应用程序的配置非常混乱 class HomeController lt ApplicationCont
  • 如何使用`[[`和`$`作为函数?

    我知道我可以这样做 x lt list a 1 b 1 y lt list a 1 JSON lt rep list x y 10000 sapply JSON a 然而 我在使用时遇到了困难 以同样的方式 sapply JSON a sa
  • 如何使用列表理解来模拟 sum()?

    是否可以使用 sum 来模拟类似的东西列表理解 http en wikipedia org wiki List comprehension Python 例如 我需要计算列表中所有元素的乘积 list 1 2 3 product magic
  • 发送多个请求时如何将结果与请求匹配?

    总结 正如其标题所示 Guzzle 允许一次发送多个请求以节省时间 如下所示文档 http docs guzzlephp org en latest http client client html sending requests resp
  • Google 地图静态 API 返回奇怪的图像

    我有一个页面 其静态地图 URI 的形式为 当我从任何浏览器访问此页面时 它显示得很好 但当我通过通过我们的 BES 连接的黑莓使用它时 但相同的无线网络 然后出现这个图像 有谁知道这张图是什么意思 你有超出使用限制 http code g
  • 如何获取自定义错误页面(Tomcat)中的消息?

    在 JSP 中 您可以使用response sendError int code String message 返回特定的错误代码 例如 404 表示未找到 和消息 只要您使用默认的丑陋的 Tomcat 错误页面 这些消息就可以正常显示 但
  • Javascript 在 window.open 之后调用函数

    我试图在 window open 函数完全加载后调用一个函数 然而 使用 onload 函数调用得太早了 所点击的 URL 将打开一个 Excel 电子表格 下载可能需要 2 秒到 1 分钟 一旦 window open 函数被调用 onl