在safari的浏览器中,我采取两套按键来控制我的js游戏,通过监测113,也就是F2键来选择触发哪套按键。但刚才做实验发现,单纯的
var menu=0;
某函数控制menu;if(menu=0)
{
.onkeydown=xxx1;
}
else
{
.onkeydown=xxx2;
}其实没有任何作用,最终的结果是xxx1,xxx2都会被onkeydown触发,请问如何才能控制触发哪个函数呢?

解决方案 »

  1.   

    即采用document.onkeydown=xxx1
    之后
    如何令onkeydown发生时,xxx1函数不运行
      

  2.   

    if(menu=0) 这句条件语句错了。。if(menu == 0)
      

  3.   

      if(event.keyCode == 13)
         { return false;
         }  
      

  4.   

    function KeyDownListener(evt){
      var evt = evt || window.event;
      
       if(evt.keyCode == 'your code number'){
         //do the things you want.
       }
    }
      

  5.   

    不好意思我没有表述清楚即采用
    document.onkeydown=xxx1;
    之后如何令onkeydown发生时,xxx1函数不运行?
      

  6.   

    function xxx1()
    {
     ........
    }
      

  7.   

    if(menu=0) ==>>if(menu==0)<div id="div1" style="margin: 20px; width: 100px; padding: 10px; height: 100px; border: 5px solid #ccc">
        </div>    <script type="text/javascript">
            var i = 1;
            var div = document.getElementById("div1");
            if (i == 0) {
                div.onmouseover = function() { alert("i=0"); }
            } else {
                div.onmouseover = function() { alert("i!=0"); }
            }
        </script>
      

  8.   

    function fun1(){
    alert("F2");
    }
    function fun2(){
    alert("Other key");
    }
    function document.onkeydown(){
    if(event.keyCode == 113)
         { 
    fun1();
         }else{
    fun2();
     }
    }
    不知道是不是能符合LZ的要求
      

  9.   

    真不好意思,刚停电了。仔细检查后确实如6楼所说,return一个false就可以了。第一次发贴,本来想修改的却不知道怎么弄,只好就这样了。新手表达不太清楚,麻烦大家拉~~~