Yimin

If not now,when? If not me, who?
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

JS 屏蔽Flash右键信息

Posted on 2010-01-16 11:01  Yimin  阅读(943)  评论(0编辑  收藏  举报

    网上好多屏蔽flash右键的方法,可多数是过期的或不合适的,现记录下用JS方法屏蔽flash右键相关版权信息。

 

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Yimin</title>
<script type="text/javascript">
function NoRightClick(pid){//pid:flash's parentNode id
 
var el = document.getElementById(pid);
 
if(el.addEventListener){
 
el.addEventListener("mousedown",function(event){
  
if(event.button == 2){
    
event.stopPropagation(); //for firefox
    
event.preventDefault()//for chrome
  
}
 
},true);
 
}else{
 
el.attachEvent("onmousedown",function(){
  
if(event.button == 2){
    
el.setCapture();
  
}
 
});
 
el.attachEvent("onmouseup",function(){
  
el.releaseCapture();
 
});
 
el.oncontextmenu = function(){
  
return false;
 
};
 
}
};
</script>
</head>
<body>
 
<div id="testContent" style="width:800px">
<embed id="t1" height="780px" width="750" pluginspage="http://www.adobe.com/go/getflashplayer" wmode="opaque" menu="false" allowscriptaccess="sameDomain" algin="middle" name="t1" quality="high" bgcolor="#000000" src="test.swf" type="application/x-shockwave-flash"/>
 
</div>
 
<script type="text/javascript">
  var so = new SWFObject("test.swf", "t1", "800", "550", "9", "#000000");
  so.addParam("quality", "high");
  so.addParam("name", "t1");
  so.addParam("id", "t1");
  so.addParam("algin", "middle");
  so.addParam("AllowScriptAccess", "sameDomain");
  so.addParam("menu", "false");
  so.addParam("wmode", "opaque");
  so.addParam("pluginspage", "http://www.adobe.com/go/getflashplayer");
  so.write("testContent");
 
  NoRightClick("testContent");
 
</script>
</body>

经过试验,该代码可以在IE、Firefox和Google Chrome里去掉flash的右键菜单,还是挺方便的。