2016-10-11 5 views
0

参照として渡された関数に引数を渡すにはどうすればよいですか?以下のコードで

body.on(event, bindSelector, callback); 

私はこの機能(kit.callback.renderPage)に参照としてコールバックを渡します。

(kit.callback.renderPage)にも引数を受け入れるようにします。以下の関数init()の引数としてオブジェクトを渡すにはどうすればよいですか?あなたが例えば、インライン/匿名関数内でコールバックをラップすることができ

jQuery(document).ready(function($) { 

    (function(send, config) { 

     var kit = { 
      selectors: { 
       "body": "body", 
       "start": "[data-ckit-toggle-on]" 
      }, 

      callback: { 

       renderPage : function() { 
        console.debug('opt'); 
       } 
      }, 


      getSelectors: function(selector) { 
       return $(selector);  
      }, 

      init: function() { 

       kit.bindNow(
        kit.events.chatToolbar, 
        kit.selectors.body, 
        kit.selectors.start, 
        kit.callback.renderPage 
       ); 


      }, 

      bindNow: function(event, bindTo, bindSelector, callback) { 
       var body = kit.getSelectors(bindTo); 
       body.on(event, bindSelector, callback); 
      } 
     }; 

     //starting point 
     kit.init(); 
    })(interface, settings); 
}); 
+0

この投稿は、おそらくあなたを助け可能性があります。http:/ /stackoverflow.com/questions/3458553/javascript-passing-parameters-to-a-callback-function –

答えて

3

bindNow: function(event, bindTo, bindSelector, callback) { 
      var body = kit.getSelectors(bindTo); 
      body.on(event, bindSelector, function() { 
       callback.call(this, param1, param2); 
      }); 
     } 

または

kit.bindNow(
      kit.events.chatToolbar, 
      kit.selectors.body, 
      kit.selectors.start, 
      function() { 
       kit.callback.renderPage.call(this, param1, param2); 
      } 
     ); 

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/call

+0

それは動作します..どうもありがとう – 112233

関連する問題