Post 消息到 JavaScript 中的跨源 iframe
Post message to cross-origin iframe in JavaScript
我是 JavaScript 的新手,我正在尝试 post 向我的 iframe 发送消息以便滚动它。
我正在尝试使用此代码实现它。
scroll(i) {
var src = $("#iframe").attr("src");
$("#iframe").contentWindow.postMessage(i, src);
}
此代码在 Chrome 控制台中启动时有效,但在从 Webapp(使用按钮)启动时无效。
我收到一条错误消息,指出 contentWindow 未定义。有人知道为什么吗?
$(document).ready(function(){
$(window).scroll(function() {
scroll("yourHtmlFile.html");
});
function scroll(i){
$("#iframe").attr("src",i);
}});
出于某种原因,我的代码似乎将 $("#iframe")
作为数组进行管理。
我通过这样做解决了这个问题:
scroll(i) {
var src = $("#iframe")[0].attr("src");
$("#iframe")[0].contentWindow.postMessage(i, src);
}
我是 JavaScript 的新手,我正在尝试 post 向我的 iframe 发送消息以便滚动它。 我正在尝试使用此代码实现它。
scroll(i) {
var src = $("#iframe").attr("src");
$("#iframe").contentWindow.postMessage(i, src);
}
此代码在 Chrome 控制台中启动时有效,但在从 Webapp(使用按钮)启动时无效。
我收到一条错误消息,指出 contentWindow 未定义。有人知道为什么吗?
$(document).ready(function(){
$(window).scroll(function() {
scroll("yourHtmlFile.html");
});
function scroll(i){
$("#iframe").attr("src",i);
}});
出于某种原因,我的代码似乎将 $("#iframe")
作为数组进行管理。
我通过这样做解决了这个问题:
scroll(i) {
var src = $("#iframe")[0].attr("src");
$("#iframe")[0].contentWindow.postMessage(i, src);
}