javascript - AS3 导航ToURL();使用 jQuery 时,javascript 函数不会触发

标签 javascript jquery actionscript-3 dom

我有一个似乎无法解决的问题。我正在使用AS3的navigateToURL();函数来调用一个简单的 javascript 函数。目前它只提醒第一个参数。问题是,当这个函数放置在 $(document).ready(function(){..}) block 内部时,它不会触发。我的代码示例:

<script type="text/javascript">
  $(document).ready(function(){
    function mapLink(aVar){
      alert(aVar);
    };
  });
</script>

简单的 AS3 函数调用示例:

navigateToURL(new URLRequest('Javascript: mapLink("'+mapObject.tooltipMoreLink+'");'), '_self');

当函数放置在 jquery 代码之外时,它可以正常工作。为什么它需要位于您可能会问的 jquery 代码内部?我需要 jQuery DOM 选择器根据 javascript 函数中“aVar”的值来操作某些 dom 元素。

以开放的心态欢迎任何指导。

最佳答案

呃。这就是ExternalInterface类是为.

您的问题与范围有关。您的函数的作用域为 jquery 对象,而不是全局的,因此它对您的调用是不可见的。如果您需要 jquery 选择器,那么您可以轻松地独立设置 flash var,然后设置 jquery 例程。

更新

也许我错过了一些东西,但这不应该像这样简单:

function externalCall(param){

     $(domElement).doSomething(param);

}

我认为这不需要与 jq read 函数绑定(bind)。我的意思是,如果 Flash 已经加载,并且用户正在交互,那么“当然”ready 事件早已成功触发。

希望有帮助。我不确定我是否完全遵循您想要做的事情;)

... 顺便说一句 - 我真的会研究ExternalInterface,NavToURL可能有效,但你可以用前一种方法直接调用你的js。

关于javascript - AS3 导航ToURL();使用 jQuery 时,javascript 函数不会触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6612177/

相关文章:

javascript - 如何编码传递给 div.load() 的 URL?

apache-flex - 在项目渲染器中动态分配图像源在 Flex/AS3 中不起作用

actionscript-3 - as3 textField vs label vs textArea

flash - Flash 可以显示 UTF-8 文本吗?

javascript - 动态设置/更改事件处理程序是不好的做法吗?

javascript - 是否可以在 javascript 函数中将 namespace 作为参数传递?

javascript - 选择月份后,jQuery UI 月份选择器应关闭

表中的 JavaScript 问题

javascript - mozilla 中的 KeyCode 出现错误

javascript - 按两个字段对 JSON 对象进行排序