【问题标题】:Passing data from iframe to flex将数据从 iframe 传递到 flex
【发布时间】:2012-06-20 16:00:35
【问题描述】:

我已经在我的 flex 应用程序中实现了一个 iframe。 iframe 包含一个谷歌地图和各种 JavaScript 函数,我可以从我的 flex 应用程序中成功调用它们。

像这样

ExternalInterface.call("top.frames[0].addMarker", i, latitude, longitude, timestamp, user, state, datestring);

但现在我想向另一个方向传递数据。

我找到了以下文章http://webdevwonders.com/communication-between-flex-and-javascript/

显示 addcallback 的用法

ExternalInterface.addCallback( "iAmCalledFromJavascript", iAmCalledFromJavascript);

我是否需要添加相同的 top.frames[0]。还是别的什么?

谢谢

文斯

【问题讨论】:

  • 你试过了吗?它在工作吗?如果没有,您收到什么错误?

标签: actionscript-3 flash apache-flex iframe


【解决方案1】:

不,您不需要添加 top.frames[0]。 因为您从 JavaScript 调用 Flex 内部的 ActionScript,并且 Flex 内部没有 DOM 框架之类的东西。 p>

只需继续使用与以前相同的 JavaScript 方法即可: 但是可以在此处找到有关访问父 iframe 文档的更多详细信息 http://www.esqsoft.com/javascript_examples/iframe_talks_to_parent/

// This is the function that gets called from ActionScript
function iAmCalledFromAS(argument1, argument2) {

    // Do whatever you like in here
    return "result";
}

function initCommunication() {

    // 'FlexJSExample' is the id of the Flash object
    var flashObj = "FlexJSExample";
    parent.$("iframe").each(function(iel, el) {
      if(el.contentWindow === window)
        // call the previously in ActionScript defined callback function of the Flash object
        el[flashObj].iAmCalledFromJavascript("argument1", 2);
    });
   }
}

【讨论】:

  • document[flashObj] 将在不存在 flashObj 的 iframe 中工作?
  • 哦,在这种情况下,我认为您应该查看 stackoverflow.com/questions/935127/… 您需要从所需的 iframe 访问该确切文档。
  • 所以查看链接,可能是 parent.document[flashObj].iAmCalledFromJavascript("argument1", 2);而是。
  • 使用代码示例更新问题 - stackoverflow.com/questions/11137676/…
猜你喜欢
  • 2015-07-23
  • 1970-01-01
  • 2022-01-24
  • 1970-01-01
  • 1970-01-01
  • 2010-12-23
  • 1970-01-01
  • 1970-01-01
  • 2018-06-07
相关资源
最近更新 更多