gpt4 book ai didi

javascript - AS3 : Reading the DOM

转载 作者:行者123 更新时间:2023-11-28 01:42:53 27 4
gpt4 key购买 nike

我正在尝试仅使用 SWF 中的 ActionScript 读取页面上的特定 DIV。不幸的是我无法访问页面上的 JS。当我尝试运行此 AS 代码时,我仅收到 null。

var childTest:String = ExternalInterface.call("function expansionCheck(){return document.getElementById('myDIV').hasChildNodes();}") as String;
ExternalInterface.call('console.log', 'childTest is '+childTest);

我已验证参数设置正确以实现此目的。

<param name="allowScriptAccess" value="always">

有什么想法吗?

最佳答案

这是ExternalInterface.call()方法的语法。

function call(functionName:String, ... arguments):*

- functionName:String — The alphanumeric name of the function to call in the container.

但是您没有传递函数名称,而是传递了函数本身。

此外,函数expansionCheck()应该存在于html页面中,以便您可以使用ExternalInterface.call()方法访问它。

此外,返回* - 从容器收到的响应。如果调用失败——例如容器中没有这样的函数、接口(interface)不可用、发生递归(使用Netscape或Opera浏览器)或者存在安全问题——返回null并返回错误抛出。

检查这个link有关ExternalInterface.call()的更多详细信息

示例:

HTML 页面

<script>
function expansionCheck(){
return document.getElementById('myDIV').hasChildNodes();
}
</script>

ActionScript :

var childTest:String = ExternalInterface.call("expansionCheck") as String;
ExternalInterface.call('console.log', 'childTest is '+childTest);

关于javascript - AS3 : Reading the DOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20671193/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com