1

我有一个函数$.doSomething()可以做一些事情,然后应该以$('selector').function(). 我不想$.doSomething()知道它在叫什么,这应该由用户决定。

我在 JSBin 上创建了一个小例子:http: //jsbin.com/umonub/11/edit

是否可以将调用存储$('#foo').doStuff();在函数对象中并将其作为参数提供给然后调用它的函数?

这是示例代码(以防有人无法访问 JSBin 或它在那里被删除):

脚本.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");
};

索引.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 回答