利用javascript完全屏蔽右键!
来源:岁月联盟
时间:2006-11-10
1.可以在flash中加入如下的代码:
fscommand("showmenu", "false");
或stage.showmenu=false2.在html中
<OBJECT>...</OBJECT>加入<PARAM NAME=menu VALUE=false>这些是很简单!可不能完全屏蔽右键!
下面是利用javascript完全屏蔽右键!
首先,是html的代码如下:
<html>
<head>
<title>.....</title>
<script language="JavaScript">
function removeMenu(e)
{ (!e)? e = window.event:"";
if(e.button == 2){window.location.replace(''javascript :void(0)'');
myMovie.TCallFrame("hidden", 1);}
}
function getObj(name)
{
if (document.getElementById)
{
this.obj = document.getElementById(name);
this.style = document.getElementById(name).style;
}
else if (document.all)
{
this.obj = document.all[name];
this.style = document.all[name].style;
}
else if (document.layers)
{
this.obj = document.layers[name];
this.style = document.layers[name];
}
}
window.onload = function () {
var x = new getObj(''myMovie'');
x.obj.onmousedown = removeMenu;
}
</script>
</head>
<body leftmargin="0" topmargin="0">
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" name="myMovie"
WIDTH="778" HEIGHT="500" ALIGN="" id="myMovie">
<PARAM NAME=movie VALUE="index.swf">
<PARAM NAME=quality VALUE=high>
<PARAM NAME=wmode VALUE=opaque>
<PARAM NAME=menu VALUE=false>
<embed src="main.swf" quality="high" wmode="opaque" menu="false" WIDTH="778" HEIGHT="500" NAME="myMovie" ALIGN TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"'' target="_blank" >/xkerfiles/uppic/2006-11/10/DIV>然后,就是flash了!在main.swf中
一共就一个空元件(剪辑)!把它拖到场景中,其实例名为hidden (注:一定要和html中的myMovie.TCallFrame("hidden", 1)同名,不然会出错的!)
好!点击右键!是不是那讨人厌菜单不见了!!
有了上面的完全屏蔽右键之后是不是想做做自己的右键菜单啊
可以,下面就在main.swf中多加个元件和几句简单的AS就可以实现!
加上一个剪辑,放到场景中,其实例名为menu
再加N个按钮放到menu上
在场景第一帖AS:
var click_i = 1;
this.onMouseDown = function() {
if ((_xmouse<getProperty(menu, _x)) || (_xmouse>getProperty(menu, _x)+getProperty(menu, _width)) || (_ymouse<getProperty(menu, _y)) || (_ymouse>getProperty(menu, _y)+getProperty(menu, _height))) {
_root.menu._visible = false;
}
};
鼠标点击时如果不是在menu上就隐藏menu
在刚才实例名为hidden的剪辑上的AS:
第一帖:
stop();第二帖:
if (_global.menushow) {
_root.menu._visible = true;
_root.menu._x = (_root._xmouse>(778-_root.menu._width)) ? (_root._xmouse-_root.menu._width) : (_root._xmouse);
_root.menu._y = (_root._ymouse>(500-_root.menu._height)) ? (_root._ymouse-_root.menu._height) : (_root._ymouse);
} else {
_root.menu._visible = true;
_global.menushow = true;
}在每一个按钮的
on (release) {
}
中一定要有一句:_root.menu._visible = false;
使menu隐藏!
好了!试点击右键看看自己的右键菜单吧!!