2013-09-26 5 views
0

이 이상한 오류가 발생했습니다. 내 플러그인에서 공용 메서드에 액세스 할 수 없습니다. 여기서 뭐가 잘못 됐니? 나는 jQuery 1.10.2를 사용한다. 당신은 $.fn.smk_Toolkit_Tabs이 끝나기 전에 return this;를 추가해야잡히지 않은 TypeError : 정의되지 않은 'tabsClick'메서드를 호출 할 수 없습니다.

var tkp = $('.smk_toolkit_plugin_container').smk_Toolkit_Tabs(); 
tkp.tabsClick(); 
+2

내 생각에'init'은 아무 것도 반환하지 않으므로'tkp'는'undefined'입니다. –

+1

닫는 중괄호 앞에 "; – tikider

+0

일부 플러그인 개발 모델을 살펴볼 필요가 있습니다 –

답변

1

: 나는 대중 방법에 액세스하려고 방법

다음
;(function ($) { 

    $.fn.smk_Toolkit_Tabs = function(options) { 

     // Defaults 
     var settings = $.extend({ 
      something: '.my_class', 
     }, options); 

     // Reffer to current instance 
     var plugin = this; 

     //"Constructor" 
     var init = function() { 
      //... 
     } 

     // My public method 
     this.tabsClick = function() { 
      //... 
     } 

     //"Constructor" init 
     init(); 

    } 

}(jQuery)); 

은 다음과 같습니다

Uncaught TypeError: Cannot call method 'tabsClick' of undefined 

여기 내 플러그인입니다.

+0

와우! 나는 그것을 믿을 수 없다. 그것은 작동합니다. 감사. –

관련 문제