ExternalInterface的call函数返回null的原因分析(AS2)
还是先研究一下AS2中的一个常见问题,在IE下和flash交互不正常的情况~!这些情况包括题目中的ExternalInterface.call函数调用JS函数不能得到返回值、ExternalInterface的callback函数不能被JS正常调用以及FlashVar不能正常传给flash,这些情况基本都是发生在IE下。这其实算是IE中的一个bug(真想掘了他家祖坟,不过我是文明人,想想还是忍了),以上问题的解决办法都是一样的:
首先保证<object>和<embed>标签都是存在的,有时候大家会忘记<object>标签,那么在除了IE以外的浏览器就会出问题了,呵呵。
其次<object>和<embed>标签中allowScriptAccess最好都设置为always
然后最关键的一点就是<object>标签中必须设置id属性,且<embed>标签中必须设置name属性,两个属性的值要一样。例如<object id="f_ckIE">...<embed name="f_ckIE">....这样。可以简单的理解为<embed>标签是为IE服务的,而<object>标签是为IE以外的浏览器准备的,呵呵。(插一句embed标签是不符合W3C规范的,而object是标准的标签,f*ck IE。。。。)
最后要注意的是ExternalInterface.call接受的返回值只能是AS中存在的几种类型,也就是Object,Array,String,Number这些了,不能返回递归或者引用,否则只能得到null。
另外:FlashVar需要在<object>和<embed>标签中都要设置。ExternalInterface.call除了用户自定义标签以外只能调用javascript中几个系统全局函数,比如alert和confirm,而window.open这样的函数就不能call了。这里有个技巧,eval其实是可以调用的
转载于:https://www.cnblogs.com/see7di/archive/2010/06/24/2239883.html
ExternalInterface的call函数返回null的原因分析(AS2)相关推荐
- ExternalInterface的call函数返回null的原因分析(AS2) 1
还是先研究一下AS2中的一个常见问题,在IE下和flash交互不正常的情况~!这些情况包括题目中的ExternalInterface.call函数调用JS函数不能得到返回值.ExternalInter ...
- loadBalancerClient choose 函数返回null 解决
今天在搭建spring cloud学习环境的时候,发现在进行服务消费者调用的时候loadBalancerClient的choose函数返回null 抛出空指针异常,并且找不到原因,起初排查也觉得是co ...
- R语言dim函数返回NULL
R语言dim函数返回NULL 目录 R语言dim函数返回NULL 问题: 解决: dim函数可以返回dataframe.maitrix的shape; 一个常见的错误是将dim应用于一维向量或数组. 问 ...
- WORD Application.Documents.Open函数返回null的一种解决方法
WORD Application.Documents.Open函数返回null的一种解决方法 参考文章: (1)WORD Application.Documents.Open函数返回null的一种解决 ...
- CreateWindow函数返回NULL
在学习Windows开发期间,遇到的问题. 写了一个GUI项目,运行之后,没有反应.调试后发现,CreateWindow函数返回NULL.大概的代码如下: #include "main.h& ...
- JavaScript中的ParseInt(08)和“09”返回0的原因分析及解决办法
今天在程序中出现一个bugger ,调试了好久,最后才发现,原来是这个问题. 做了一个实验: alert(parseInt("01")),当这个里面的值为01====>07时 ...
- onload js函数不执行的原因分析及解决方法
今天打开网站的时候,发现很多页面的信息都没有显示出来,仔细观察了之后,发现都是onload的js函数没有执行的原因.其实之前曾发现过这个情况,我以为是网站出了问题,然后采用多种方法试图让onload的 ...
- oracle sum函数返回空,关于SQL语句中SUM函数返回NULL的解决办法
SUM 是SQL语句中的标准求和函数,如果没有符合条件的记录,那么SUM函数会返回NULL. 但多数情况下,我们希望如果没有符合条件记录的情况下,我们希望它返回0,而不是NULL,那么我们可以使用例如 ...
- mybatis查询返回null的原因_可怕!你没看错,这次确实是纯手工实现一个MyBatis框架...
目录 前言 JDBC MyBatis 源码分析 前置知识 原理分析 自己实现一个 MyBatis 框架 前言 MyBatis是一个非常优秀的持久层应用框架,目前几乎已经一统天下.既然是持久层框架,那么 ...
最新文章
- pythonpass函数_有的python内置函数怎么就一个pass?
- SqlServer2012清除日志文件
- html表单input file,input标签type=file的文件上传
- Android自定义View构造函数详解
- 为什么现在越来越多的人买手机都喜欢从官网购买,而不从实体店买?
- Unity蛮牛教程噩梦射手----代码讲解(1)
- Java理解mian方法
- 使用BPEL创建Web服务组合
- 大象不会跳舞了吗?营收下滑的IBM在干什么
- 【YOLOV5-5.x 源码解读】google_utils.py
- Gentoo 教程:编译器选择
- c语言的实验题答案,大一C语言上机实验试题及答案
- 【Vue】ElementUI、ECharts使用 cdn引入
- echarts折线图鼠标悬浮竖线_Echarts折线图问题,鼠标悬停的地方不能正确展示数据怎么回事呢?...
- vba调用python代码_Python替代Excel Vba系列(终):vba中调用Python
- 为触屏手机而设计系列1—拇指操作的热区死角与控件尺寸
- 土地利用规划之平时作业一
- 关于Mac上使用百度云下载速度慢的解决方案
- 幻灯片批量添加角标_如何在Google文档或幻灯片中设置上标或下标文本的格式
- 股妖APP也妖 -- 与暴风魔镜相关