首页 网站知识 网站案例 网站制作流程 网站制作价格 网站定制 联系我们
Q Q
电 话
手 机
Q Q
电 话
手 机

FLASH与JS通信简单实例

发布时间:2020-04-06 00:00
发布者:网站定制网
浏览次数:
一个页面加载一个FLASH。点击页面中的按钮。加载让FLASH加载按钮对应的FLASH:

AC_RunActiveContent.js
//v1.7
// Flash Player Version Detection
// Detect Client Browser type
// Copyright 2005-2007 Adobe Systems Incorporated. All rights reserved.
var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

function ControlVersion()
{
var version;
var axo;
var e;

// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry

try {
// version will be set for 7.X or greater players
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
version = axo.GetVariable("$version");
} catch (e) {
}

if (!version)
{
try {
// version will be set for 6.X players only
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");

// installed player is some revision of 6.0
// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
// so we have to be careful.

// default to the first public version
version = "WIN 6,0,21,0";

// throws if AllowScripAccess does not exist (introduced in 6.0r47)
axo.AllowScriptAccess = "always";

// safe to call for 6.0r47 or greater
version = axo.GetVariable("$version");

} catch (e) {
}
}

if (!version)
{
try {
// version will be set for 4.X or 5.X player
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
version = axo.GetVariable("$version");
} catch (e) {
}
}

if (!version)
{
try {
// version will be set for 3.X player
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
version = "WIN 3,0,18,0";
} catch (e) {
}
}

if (!version)
{
try {
// version will be set for 2.X player
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
version = "WIN 2,0,0,11";
} catch (e) {
version = -1;
}
}

return version;
}

// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer(){
// NS/Opera version >= 3 check for Flash plugin in plugin array
var flashVer = -1;

if (navigator.plugins != null && navigator.plugins.length > 0) {
if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
var descArray = flashDescription.split(" ");
var tempArrayMajor = descArray[2].split(".");
var versionMajor = tempArrayMajor[0];
var versionMinor = tempArrayMajor[1];
var versionRevision = descArray[3];
if (versionRevision == "") {
versionRevision = descArray[4];
}
if (versionRevision[0] == "d") {
versionRevision = versionRevision.substring(1);
} else if (versionRevision[0] == "r") {
versionRevision = versionRevision.substring(1);
if (versionRevision.indexOf("d") > 0) {
versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
}
}
var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
}
}
// MSN/WebTV 2.6 supports Flash 4
else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
// WebTV 2.5 supports Flash 3
else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
// older WebTV supports Flash 2
else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
else if ( isIE && isWin && !isOpera ) {
flashVer = ControlVersion();
}
return flashVer;
}

// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
versionStr = GetSwfVer();
if (versionStr == -1 ) {
return false;
} else if (versionStr != 0) {
if(isIE && isWin && !isOpera) {
// Given "WIN 2,0,0,11"
tempArray = versionStr.split(" "); // ["WIN", "2,0,0,11"]
tempString = tempArray[1];// "2,0,0,11"
versionArray = tempString.split(",");// ['2', '0', '0', '11']
} else {
versionArray = versionStr.split(".");
}
var versionMajor = versionArray[0];
var versionMinor = versionArray[1];
var versionRevision = versionArray[2];

// is the major.revision >= requested major.revision AND the minor version >= requested minor
if (versionMajor > parseFloat(reqMajorVer)) {
return true;
} else if (versionMajor == parseFloat(reqMajorVer)) {
if (versionMinor > parseFloat(reqMinorVer))
return true;
else if (versionMinor == parseFloat(reqMinorVer)) {
if (versionRevision >= parseFloat(reqRevision))
return true;
}
}
return false;
}
}

function AC_AddExtension(src, ext)
{
if (src.indexOf('?') != -1)
return src.replace(/\?/, ext+'?');
else
return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs)
{
var str = '';
if (isIE && isWin && !isOpera)
{
str += '<object ';
for (var i in objAttrs)
{
str += i + '="' + objAttrs[i] + '" ';
}
str += '>';
for (var i in params)
{
str += '<param name="' + i + '" value="' + params[i] + '" /> ';
}
str += '</object>';
}
else
{
str += '<embed ';
for (var i in embedAttrs)
{
str += i + '="' + embedAttrs[i] + '" ';
}
str += '> </embed>';
}

document.write(str);
}

function AC_FL_RunContent(){
var ret =
AC_GetArgs
( arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
, "application/x-shockwave-flash"
);
AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
var ret =
AC_GetArgs
( arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
, null
);
AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
var ret = new Object();
ret.embedAttrs = new Object();
ret.params = new Object();
ret.objAttrs = new Object();
for (var i=0; i < args.length; i=i+2){
var currArg = args[i].toLowerCase();

switch (currArg){
case "classid":
break;
case "pluginspage":
ret.embedAttrs[args[i]] = args[i+1];
break;
case "src":
case "movie":
args[i+1] = AC_AddExtension(args[i+1], ext);
ret.embedAttrs["src"] = args[i+1];
ret.params[srcParamName] = args[i+1];
break;
case "onafterupdate":
case "onbeforeupdate":
case "onblur":
case "oncellchange":
case "onclick":
case "ondblclick":
case "ondrag":
case "ondragend":
case "ondragenter":
case "ondragleave":
case "ondragover":
case "ondrop":
case "onfinish":
case "onfocus":
case "onhelp":
case "onmousedown":
case "onmouseup":
case "onmouseover":
case "onmousemove":
case "onmouseout":
case "onkeypress":
case "onkeydown":
case "onkeyup":
case "onload":
case "onlosecapture":
case "onpropertychange":
case "onreadystatechange":
case "onrowsdelete":
case "onrowenter":
case "onrowexit":
case "onrowsinserted":
case "onstart":
case "onscroll":
case "onbeforeeditfocus":
case "onactivate":
case "onbeforedeactivate":
case "ondeactivate":
case "type":
case "codebase":
case "id":
ret.objAttrs[args[i]] = args[i+1];
break;
case "width":
case "height":
case "align":
case "vspace":
case "hspace":
case "class":
case "title":
case "accesskey":
case "name":
case "tabindex":
ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
break;
default:
ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
}
}
ret.objAttrs["classid"] = classid;
if (mimeType) ret.embedAttrs["type"] = mimeType;
return ret;
}


text.html

<html>

<head>
<meta http-equiv="Content-Language" content="zh-cn">
<script language="javascript" src="AC_RunActiveContent.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>1</title>
</head>

<body>

<script language="javascript">
for(var i=1;i<=8;i++){
document.write("<p><a href=\"#\" onclick=\"loadSWF("+i+");\">"+i+"</a></p>");
}
function loadSWF(swfindex){
player.loadSWF(swfindex);
}
</script>

<script language="javascript">
if (AC_FL_RunContent == 0) {
alert("此页需要 AC_RunActiveContent.js");
} else {
AC_FL_RunContent(
'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
'width', '800',
'height', '500',
'src', 'index',
'quality', 'high',
'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
'align', 'middle',
'play', 'true',
'loop', 'true',
'scale', 'showall',
'wmode', 'transparent',
'devicefont', 'false',
'id', 'player',
'bgcolor', '#ffffff',
'name', 'player',
'menu', 'true',
'allowFullScreen', 'false',
'allowScriptAccess','sameDomain',
'movie', 'index',
'salign', ''
); //end AC code
}
</script>

</body>

</html>


热点地区网站制作
热门地区网站设计制作、为客户量身定制一个适合自己的推广营销型网站
|沽源做网站
沽源县总面积3654平方公里,辖4镇、10乡(其中1个回族乡),233个行政村,在册人口23.1万人,其中农业人口20.95万人,有耕地156万亩,农民人均7.5亩,草场176万亩(其中人工草场38万亩)
|雁山网站制作
雁山区是广西壮族自治区桂林市下辖区,1996年底桂林市区划调整成立,位于桂林市南部,属桂林市六城区之一,东与灵川县相连,西与临桂区毗邻,南与阳朔县交界,北与象山区、七星
|麻阳企业做网站
麻阳苗族自治县位于湘黔边界的湖南省西部,怀化市西北部。全县总面积1568平方公里,其中耕地面积25.5万亩,辖17乡6镇,总人口37.1万人,其中苗族占76.8%,是全国五个单一苗族自治县
|连山网站推广
连山壮族瑶族自治县,隶属广东省清远市,地处南岭五岭之一的萌诸山脉之中,位于粤、湘、桂三省(区)结合部。西至广西壮族自治区贺州市八步区、北与湖南省江华瑶族自治县相接
|义乌网络推广
义乌市位于浙江省中部,地属金华市,位于金衢盆地东部,东经119度49分至120度17分,北纬29度02分13秒至29度33分40秒,浙江省地理中心地处境内。东邻东阳市,南界永康市、武义县,西连
|沈阳网站建设
沈阳是辽宁省的省会,因位于浑河(旧称"沈水")北岸故称沈阳。沈阳是中国东北地区经济、文化、交通、金融和商业中心,是辽宁省省会,也是中国重要的工业基地和历史文化名城。
|墨竹工卡网站建设
墨竹工卡县,隶属于西藏自治区拉萨市,藏语意为“墨竹色青龙王居住的中间白地”,位于西藏自治区中部、拉萨河中上游、米拉山西侧。东邻林芝地区工布江达县,南接山南地区桑日
|神木网站建设
神木县位于陕西省北端,地处黄河中游,长城沿线。北接内蒙古,东跨黄河入山西,西越榆林、定边直通宁夏,是晋陕蒙三省交界地带的中心,地理位置优越,史称“南卫关中,北屏河
|安庆网站建设
安庆位于中国安徽省西南部、长江下游北岸,毗邻湖北省和江西省,是长江北岸著名的历史文化古城。安庆市现为皖西南的中心城市,辖1市7县3区,人口600万,总面积1.53万平方公里,其
|鹤峰网站建设
鹤峰县位于恩施州东南部与湖南省毗邻;面积2892平方公里,人口22.02万,辖六乡两镇和一个开发区。漫长的地壳运动造就了鹤峰群山巍峨、气势磅礴的地形地貌,原始古朴的自然生态与悠
|江源网站建设
江源区是吉林省白山市的两个城区之一,位于吉林省东南部,白山市西部,东与抚松县为邻,西北与柳河县交界,西南与浑江区相连,南与临江市毗连,北与靖宇县接壤,总面积1348平方
|武乡网站建设
武乡县位于太行山区东麓,山西省东南部,长治市最北端,东经112026’至113022’。北纬36039’至37008’。东邻黎城、左权;西界祁县、平遥;北与榆社毗邻,南与襄垣接壤,西南与沁县交
推荐地区
重点地网站设计、网站建设、网站维护服务推荐,完善的售前售后服务保障客户推广的有效
|吕梁做网站
吕梁企业做网站,吕梁比较好的网络公司,吕梁专业的网站建设
|阜新网站制作
阜新企业做网站,阜新比较好的网络公司,阜新专业的网站建设
|江西企业做网站
江西企业做网站,江西比较好的网络公司,江西专业的网站建设
|山西网站推广
山西企业做网站,山西比较好的网络公司,山西专业的网站建设
|曲靖网络推广
曲靖企业做网站,曲靖比较好的网络公司,曲靖专业的网站建设
|阿拉善盟网站建设
阿拉善盟企业做网站,阿拉善盟比较好的网络公司,阿拉善盟专业的网站建设
|鞍山网站建设
鞍山企业做网站,鞍山比较好的网络公司,鞍山专业的网站建设
|抚顺网站建设
抚顺企业做网站,抚顺比较好的网络公司,抚顺专业的网站建设
|重庆网站建设
重庆企业做网站,重庆比较好的网络公司,重庆专业的网站建设
|甘南网站建设
甘南企业做网站,甘南比较好的网络公司,甘南专业的网站建设
|林芝网站建设
林芝企业做网站,林芝比较好的网络公司,林芝专业的网站建设
|杭州网站建设
杭州企业做网站,杭州比较好的网络公司,杭州专业的网站建设
热点TAG
网站制作热点内容汇集,展示最新的网站建站TAG,热点做网站内容