javascript - 在 JavaScript 中将消息发布到跨域 iframe
问题描述
我是 JavaScript 新手,我正在尝试向我的 iframe 发布一条消息以滚动它。我正在尝试使用此代码来实现它。
scroll(i) {
var src = $("#iframe").attr("src");
$("#iframe").contentWindow.postMessage(i, src);
}
此代码在 Chrome 控制台中启动时有效,但从 Web 应用程序(使用按钮)启动时无效。
我收到一条错误消息,提示 contentWindow 未定义。有人知道为什么吗?
解决方案
出于某种原因,我的代码似乎是$("#iframe")
作为一个数组管理的。我通过这样做解决了这个问题:
scroll(i) {
var src = $("#iframe")[0].attr("src");
$("#iframe")[0].contentWindow.postMessage(i, src);
}
推荐阅读
- python - Python枚举迭代子集
- php - 如何为 Wp 所有导入编码以更新 ACF 字段
- java - JUnit - 比较未知的 Collection 和 ArrayList
- angular-material - 如何在角度材料表的垫表列中添加子列
- three.js - 为什么 Camera 和 Object3D 看起来方向相反?
- python - 如何以最佳(pythonic)方式编写此代码?
- javascript - 将数组的项合并到一个对象中
- sql-server - 从 SQL 中的结果集中减少数量
- google-bigquery - 返回表的 UDF
- r - 在 R 中解析 XML 时文档末尾的额外内容