右键弹出菜单问题? <div class="menuitems" onclick="return imgManify_onclick()" align="center"> 此处如果用onclick就会执行放大操作,如不用onclick,何时调用地图放大函数啊?能否说的详细点啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 为什么要return?imgManify_onclick()方法直接执行放大?看下代码 imgManify_onclick()代码 谢谢 此方法通过传COOKIE值,调用组件里的方法执行放大操作 好吧 既然你用叙述的那我也叙述方法外定义一个变量为false 点击改为true 放大前检查变量 function imgManify_onclick() {//地图放大document.cookie="stacookie=1";} 组件里的放大方法只知道一个方法名,直接调用就可以,具体代码没有 先判断下点的是什么键,右键就显示菜单,如果点过放大菜单了点左键时执行放大eg<style type="text/css">.menuitems{ position:absolute; width:100px; height:50px; border:solid 1px black; background-color:White; display:none; z-index:100; }</style><script>var IsIE=!!document.all;var divClick=false;//这里设置一个标志位,是否点过菜单的“地图放大”function buttonValue(e){//ie的事件button值在ff和ie下不同,所以要区分下,统一为ie下的,ie下右键为2,左键为1 if(IsIE)return e.button; else{ //ff下左键为0右键为2 if(e.button==0)return 1; else if(e.button==2)return 2; } }function MMD(e){ e=e||event; if(buttonValue(e)==2)//点右键显示菜单 { var m=document.getElementById('divMenu'); m.style.left=e.clientX+"px"; m.style.top=e.clientY+"px"; m.style.display="block"; } else{//左键,执行放大处理 if(!divClick)return ;//如果未先点击过放大菜单则退出不放大 divClick=false;//设置为未点过 var img=document.getElementById('img'); img.style.width=parseInt(img.offsetWidth)*(1+0.2); img.style.height=parseInt(img.offsetHeight)*(1+0.2); }}function setMark(o){ divClick=true; o.style.display="none";}</script><!---点击“地图放大”时设置标志位---><div class="menuitems" onclick="setMark(this)" align="center" id="divMenu" oncontextmenu="return false;">地图放大 </div><img src="http://country.lvyou168.cn/flashwariii/3.jpg" width="300px" height="300px" id="img" onmousedown="MMD(event)" oncontextmenu="return false;"/> <a href="javascript:"> 这句话的作用 求助:网上很常见的无缝滚动动画的实现方法 无法动态添加和设置pluginspage与codebase? 关于EXTJS的一个小问题 JavaScript怎么连接oracle javascript 加载xml文件,在Chrome下不成功,求助! 如何控制div的位置 javascript函数参数的定义 JS实现上下翻页的功能 easyui如何在文本框后面提示错误信息 j上 |zyciis| 200分求:一条二级菜单在IE6中可以,但在Firefox中不行 谁会帮改改啊 急 谢谢
imgManify_onclick()方法直接执行放大?看下代码
方法外定义一个变量为false 点击改为true 放大前检查变量
function imgManify_onclick() {//地图放大
document.cookie="stacookie=1";
}
组件里的放大方法只知道一个方法名,直接调用就可以,具体代码没有
<style type="text/css">
.menuitems
{
position:absolute;
width:100px;
height:50px;
border:solid 1px black;
background-color:White;
display:none;
z-index:100;
}
</style>
<script>
var IsIE=!!document.all;
var divClick=false;//这里设置一个标志位,是否点过菜单的“地图放大”
function buttonValue(e){//ie的事件button值在ff和ie下不同,所以要区分下,统一为ie下的,ie下右键为2,左键为1
if(IsIE)return e.button;
else{
//ff下左键为0右键为2
if(e.button==0)return 1;
else if(e.button==2)return 2;
}
}
function MMD(e){
e=e||event;
if(buttonValue(e)==2)//点右键显示菜单
{
var m=document.getElementById('divMenu');
m.style.left=e.clientX+"px";
m.style.top=e.clientY+"px";
m.style.display="block";
}
else{//左键,执行放大处理
if(!divClick)return ;//如果未先点击过放大菜单则退出不放大
divClick=false;//设置为未点过
var img=document.getElementById('img');
img.style.width=parseInt(img.offsetWidth)*(1+0.2);
img.style.height=parseInt(img.offsetHeight)*(1+0.2);
}
}
function setMark(o){
divClick=true;
o.style.display="none";
}
</script>
<!---点击“地图放大”时设置标志位--->
<div class="menuitems" onclick="setMark(this)" align="center" id="divMenu" oncontextmenu="return false;">地图放大 </div>
<img src="http://country.lvyou168.cn/flashwariii/3.jpg" width="300px" height="300px" id="img" onmousedown="MMD(event)" oncontextmenu="return false;"/>