本帖最后由 even0220 于 2010-12-22 17:06:01 编辑

解决方案 »

  1.   

    function onclick()
    {
      click(function(){inputWords()});
    }
      

  2.   

    <html>
        <head>
            <title></title>
    <script language="javascript" type="text/javascript">
    function inputWords() {
    alert(1);
    }
    function click(obj) {
    obj();
    }

    function onclick() {
    click(inputWords);
    }
    onclick();
    </script>
        </head>
        <body>
            
        </body>
    </html>
      

  3.   


    function a(){
     alert('我是a');
    }
    function clickhandle(fn){
        return function(){
            alert('我是传说中的onclick函数');
            fn&&fn();
        }
    }
    s.onclick = clickhandle(a);
      

  4.   

    function onclick()
    {
      click(function(){inputWords()});

     
      

  5.   

     我再说清楚下:已经存在的函数function inputPlaceOfReceipt()
    {
              dosomething;
    }
    我的这个函数开始调用:function changeTip()
    {
         changeTip_common("divtip","txt**,"inputPlaceOfReceipt");
    }function changeTip_common(e,e1,e3)
    {
                e3();}(这儿会报错,提示找不到方法)
      

  6.   

    changeTip_common("divtip","txt**,inputPlaceOfReceipt);这样
      

  7.   

    传人函数的地址,而不是名称的字符串
    changeTip_common("divtip","txt**,inputPlaceOfReceipt);
      

  8.   

    [Quote=引用 5 楼 even0220 的回复:] 我再说清楚下:已经存在的函数function inputPlaceOfReceipt()
    {
              dosomething;
    }
    我知道你想说什么,类似函数指针形式的,估js中  使用var x=new change();这样获取的的测试:
    <html>
    <head>
    <link rel="stylesheet" type="text/css" href="my_styles1.css"/>
    <script type="text/javascript">function change1()
    {
    alert(1);
    /*var x=new change1();
    x();*/
    }
    function change()
    {
    alert(2);
    /*var x=new change1();
    x();*/
    change2(new change1());
    }
    function change2(x)
    {
      x();
    }</script>
    </head>
    <body >
     <input type="button" value="click me " onclick="change()"/> 
    </body>
    </html>
      

  9.   

    var func1 = function inputPlaceOfReceipt()
    {
      dosomething;
    }
    func1.name="inputPlaceOfReceipt";
    我的这个函数开始调用:function changeTip()
    {
      changeTip_common("divtip","txt**,"inputPlaceOfReceipt");
    }function changeTip_common(e,e1,e3)
    {
     if(e3 == func1.name){
        func1();
      }
     }
    你的第三个参数是字符串,直接字符串加()调用方法肯定是不行的,为你调用的函数加个name属性(和方法名相同),当这个方法的name与第三个参数相同是,就调用该方法,如果有多个预调用的方法就只能多写几个if了
      

  10.   


    这样也可以,O(∩_∩)O~
    change2(change1);
      

  11.   


    这个地方写错了 ,应该是var func1 = function(){.......} ......
      

  12.   

    //经测试,可成功执行
    function inputWords(){
      alert('ok');
    }//函数调用:function click(obj)
    {
      obj();
    }
    function onclick()
    {
      click(inputWords);
    }
    onclick();