1

$.doSomething()いくつかのことを実行し、jQuery形式の他の関数を呼び出す必要がある関数があり$('selector').function()ます。私はそれが何を呼んでいるのか知りたくありません$.doSomething()、それはユーザーによって決定されるべきです。

JSBinで小さな例を作成しました:http: //jsbin.com/umonub/11/edit

呼び出しを関数オブジェクトに格納し、$('#foo').doStuff();それを関数のパラメーターとして指定して、それを呼び出すことは可能ですか?

サンプルコードは次のとおりです(誰かがJSBinにアクセスできない場合、またはJSBinが削除された場合):

script.js

$(document).ready( function() {
  var callback = $('#foo').doStuff();
  $.doSomething(callback);
});


$.extend({
  doSomething: function(callback) {
    //do some stuff
    //call the callback
  }
});


$.fn.doStuff = function() {
  $(this).text("Stuff Done");
};

index.html

<html>
<head>
  <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
  <script src="script.js"></script>
</head>
<body>
  <p id="foo"></p>
</body>
</html>
4

1 に答える 1

4

確かに、関数の中に入れるだけ$('#foo').doStuff()です:

var callback = function() {
    $('#foo').doStuff();
};
于 2013-02-17T15:06:03.357 に答える