参数为函数时候的调用问题?

为什么这样可以调用参数里的open函数
这样就不可以调用参数里的open函数是为什么呢

  showInfo:function($obj){
            //这样可以调用参数里的open函数
            /*this.options.open();*/
            $(".switch").click(function($obj){
                if ($(this).hasClass('switchOn')) {
                    this.options.open();
                }else{

                }
            })


        }
    }

你没搞清楚jquery,$("xxx").click中函数的this指向当前点击的dom对象,不是showInfo的主调对象的实例,要用一个变量存储showInfo的主调对象实例

 showInfo:function($obj){
                        var me=this;///////
            $(".switch").click(function($obj){
                if ($(this).hasClass('switchOn')) {
                    me.options.open();/////////////////////
                }else{

                }
            })


        }
    }


没明白你想问的是什么?你取到open函数的值,就说明你已经调用了open函数了。