页面上Flash等ActiveX控件的激活

本文介绍了解决Flash在新浏览器中需要手动激活的问题。通过四种不同的方法动态加载ActiveX控件,使得Flash内容无需用户交互即可播放。
最近一个项目的菜单采用Flash来做,可是新的浏览器上老是要点击一下激活后才可使用,查了相关资料才知道原来可以通过从外部文件加载控件的方法来实现不应激活即可使用。
1、document.write动态加载控件:
<!-- HTML 文件 -->
<html>
  
<body leftmargin=0 topmargin=0 scroll=no>
    
<script src="docwrite.js"></script>
  
</body>
</html>
// docwrite.js
document.write('
<object classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6">');
document.write('
<param name="URL" value="example.wmv">');
document.write('
<param name="autoStart" value="-1"></object>');


2、修改元素的 outerHTML 属性
<!-- HTML 文件 -->
<html>
  
<body> 
    
<div id="embedControlLocation">
      
<script src="embedControlOuterHTML.js"></script>
    
</div>
  
</body>
</html>
// outerhtml.js
embedControlLocation.outerHTML = '
<embed src="examplecontrol">';


3、使用 document.createElement 加载使用 OBJECT 元素的 ActiveX 控件
<!-- HTML 文件 -->
<html>
  
<body> 
    
<div id="DivID">
      
<script src="createElementExplicit.js"></script>
    
</div>  
  
</body>
</html>
// createElementExplicit.js
var myObject = document.createElement('object');
DivID.appendChild(myObject);
myObject.width = "200";
myObject.height = "100";
myObject.classid= "clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6"; 
myObject.URL = "example.wmv";
myObject.uiMode = "none" ;

3、使用 innerHTML 和 JScript 函数加载 ActiveX 控件,同时指定参数值
<!-- HTML 文件 -->
<html>
 
<head>
   
<script src="external_script.js" language="JScript"></script>
 
</head>
 
 
<body>
   
<div id="EXAMPLE_DIV_ID">
      This text will be replaced by the control
   
</div>
   
<script language="JScript">
     CreateControl( 
"EXAMPLE_DIV_ID",
                    
"clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6",
                    
"EXAMPLE_OBJECT_ID""600""400""example.wmv",
                    
"-1")
   
</script>
 
</body>
</html>
// external_script.js
function CreateControl(DivID, CLSID, ObjectID,
                       WIDTH, HEIGHT, URL, AUTOSTART)
{
  var d = document.getElementById(DivID);
  d.innerHTML = 
    '
<object classid=' + CLSID + ' id=' + ObjectID + 
    ' width
=' + WIDTH + ' height=' + HEIGHT +'>
    
<param name="URL" value=' + URL + '>
    
<param name="autoStart" value=' + AUTOSTART + '/>';
}



以上摘抄自 http://www.microsoft.com/china/MSDN/library/NetComm/activating_activex.mspx?mfr=true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值