document.oncontextmenu=new Function("return showMenu('"+publicVar+"');");

解决方案 »

  1.   

    你这种写法,当然每次调用的时候都是以变量的当前值作为参数传入的呀。按你的需求应该把这个值固化给这个函数:obj.onclick=new Function("return showMenu('"+ publicVar +"')");
      

  2.   

    那么,应该怎样理解new Function("return showMenu('AAA')");这种写法呢?看形式,像是把return showMenu('AAA')的返回值作为一个参数?
      

  3.   

    哦,另外,new Function中若“Function”写为小写形式的“function”行不行?
      

  4.   

    new Function是创建一个函数,Function是关键字,不能小写
      

  5.   

    obj.oncontextmenu=(function(s){return function(){showMenu(s);};})(publicVar);