摘自: http://www.luar.com.hk/flashbook/archives/001383.php
中国经济网 经济博客[/lGh8\W
你有所不知的HTML發佈Flash的參數(一):allowScriptAccess
HTML發佈Flash的參數,就是那些額外加在HTML<embed>,
<object>中的參數,由以前常見的wmode到現在越來越多allow*系列。不小心亂用、不小心配合地用、或者不知道它們的妙用,往往對你的Flash開發效率有大大的影響。
今天先說一個allowScriptAccess。在Flash Player
6,0,40,0起,你可以通過設定allowScriptAccess來決定Flash是否可以用getURL, FSCommand和
ExternalInterace去呼叫JavaScript的Function。allowScriptAccess的值分為always和never。Flash Player 7或之前預設是always,代表Flash可以呼叫相同或不同domain的JavaScript的Function;Flash
Player 8或之後預設是sameDomain,代表Flash只可以呼叫相同domain的JavaScript的Function。
這所謂預設是always,又是一個陷阱所在。如果JavaScript的Function是來自其他domain(<script.
src="http://otherdomain.com/script.js"
type="text/javascript"></script>),Flash就無法呼叫,必須在發佈SWF的HTML上加入allowScriptAccess=always。(參考這TechNote
)
這陷阱對Developer影響較大,不過allowScriptAccess=always還有另一個用處,對普通Designer幫助更大。
有時在論壇上常常有人問,為什麼更新到Flash Player
9後,用getURL不能打開其他網頁。這有可能是Flash在本地發佈安全限制,但我是發佈在網絡上,為什麼仍然不能?原因是提問者往往沒有說清楚自己的發佈路徑,別人就會摸不著頭腦。其實,如果包含Flash的網頁所在domain,跟Flash所在domain是不同,如果用getURL沒有加上_blank,即是用_self,
_top, _parent來變更目前網頁,Flash Player
9起會預設無效!這時,只要加上allowScriptAccess=always就可以解決問題。(參考這TechNote
)
本文章由luar
發表。
分享到:
相关推荐
JavaScript 和 Flash 之间的交互是 Web 开发中的一个重要概念,尤其在早期互联网时代,Flash 被广泛用于创建动态内容和富媒体应用。然而,随着 HTML5 的崛起,Flash 已逐渐淡出,但理解两者之间的交互仍然对历史背景...
2. **使用JSP自定义标签**:如果你有一个自定义标签库,也可以创建一个专门用于插入Flash的标签。 三、相关知识点 1. **源码**:HTML和JSP的源码结构,包括标签、属性、脚本等。 2. **工具**:SWFObject库,用于...
1. Flash参数与变量:通过`flashvars`、`params`和`attributes`对象,你可以传递Flash所需的各种参数,如`quality`、`wmode`、`allowScriptAccess`等,以及自定义变量。 2. 动态插入:SWFObject可以动态地在页面加载...
- **allowScriptAccess**:允许脚本访问Flash内容。 - **pluginspage**:当用户未安装Flash插件时,指向下载页面的链接。 ### 3. JavaScript实现的下载逻辑 #### 3.1 下载提示逻辑 - 通过JavaScript监听不同元素的...
在过去的几年里,虽然HTML5的崛起让Flash的地位有所下降,但在处理某些特定功能,如跨浏览器的剪贴板操作方面,Flash仍然具有优势。 要创建这个小插件,我们需要以下步骤: 1. **创建Flash组件**:使用Adobe Flash...
在HTML中为FLASH添加链接是一项常见且实用的技术,它允许用户点击SWF文件时执行某种操作,比如跳转到另一个网页。这对于透明的FLASH尤其有用,因为它可以与页面的其他元素无缝融合,同时还能保持交互性。下面我们将...
var params = {allowScriptAccess: "always"}; var attributes = {}; var flashUrl = "myFlashMovie.swf"; ``` 4. **调用SWFObject**:使用SWFObject的`swfobject.embedSWF()`方法将Flash内容嵌入到页面中。 ```...
- 由于跨域限制,Flash与HTML交互需要设置正确的`AllowScriptAccess`参数。 - Web服务和WebSocket通信可能涉及跨域策略,需要配置CORS(跨源资源共享)。 - 注意性能优化,避免频繁的网络请求,合理缓存数据。 ...
- ActionScript:Flash中的编程语言,用于控制动画和交互。 - External Interface:Flash Player提供的API,允许ActionScript与JavaScript之间进行通信。通过`ExternalInterface.addCallback`方法在Flash中定义可...
在你的压缩包中,`temp.html`可能是包含上述代码的一个示例HTML文件,而`怎样在html页面中播放flash动画.swf文件.png`可能是关于这个过程的截图,`0011-ltblue.swf`则是一个实际的SWF文件,你可以按照上述代码替换...
- `<param>`标签用于设置Flash文件的参数,如`allowScriptAccess`控制脚本访问权限,`movie`指定Flash文件路径,`quality`设定播放质量,`bgcolor`设定背景颜色。 - `<embed>`标签提供了类似的功能,但在某些浏览器...
本教程将通过一个简单的网页示例,深入浅出地介绍HTML的基本概念及其与Flash的结合使用。 HTML是互联网上最常用的标记语言,它允许我们通过文本编辑器创建结构化的文档,这些文档在浏览器中呈现为交互式的网页。...
在这个场景下,`player.swf`很可能是一个预定义的Flash播放器,而`aaa.flv`则是一个FLV格式的视频文件,这种格式通常用于在网络流媒体中播放视频。 要实现JSP中播放Flash,我们通常需要以下步骤: 1. **引入Flash ...
在JavaScript和Flash之间进行交互是Web开发中的一个经典主题,特别是在过去Flash广泛用于实现音频、视频播放和动画的时候。本文将深入探讨如何在JavaScript中调用Flash,以及在这个过程中可能遇到的问题。 首先,...
通过以上步骤,你可以创建一个类似于4399游戏的JS加载Flash进度条。记住,由于Adobe已停止对Flash Player的支持,现代浏览器不再内建Flash支持。因此,这种技术主要用于兼容旧项目或处理仍依赖Flash的内容。在新项目...
2. 在JavaScript中调用Flash方法:接着在HTML中,我们可以通过`object`或`embed`标签的`Flash参数`设置`allowScriptAccess`为"always",然后通过`Flash对象`调用Flash中的方法。 ```javascript var flashObject = ...
本资源“VC中使用 Flash 美化你的程序.rar”提供了一种方法,帮助VC++程序员将Flash SWF文件嵌入到Windows应用程序中,从而提升用户体验。 首先,我们要理解Flash在网页中的工作原理。Flash是一种创建动态内容的...
var params = {allowScriptAccess: "always"}; var attributes = {}; swfobject.embedSWF("myFlash.swf", "flashcontent", "400", "300", "9.0.0", "", flashvars, params, attributes); ``` 5. **检测Flash...
2. **参数设置**:在`<object>`标签内,可以设置各种参数,如`movie`(指定SWF文件路径)、`width`和`height`(设定Flash的尺寸)、`allowScriptAccess`(允许脚本访问)等,这些参数可以控制Flash的行为和交互性。...