如何确保在完成相同的事件处理程序后执行事件处理程序?

时间:2016-12-20 15:21:12

标签: javascript jquery

基本上,这是我的代码:

GstCaps *lookupByName(const char *name) {
    for (int i = 0 ; i != sizeof(frConfig)/sizeof(frConfig[0]) ; i++) {
        if (strcmp(frConfig[i], name) == 0) {
            return frLookup[i];
        }
    }
    return NULL; // Not found
}
$('#press').click(function() { alert('First') });
$('#press').click(function() { alert('Second') });

如何确定第二个事件处理程序 - <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <button id="press">press</button>是否仅在第一个事件处理程序 - $('#press').click(secondFunction);完成后执行?

2 个答案:

答案 0 :(得分:3)

  

如何确保仅在第一个事件处理程序完成后才执行第二个事件处理程序?

使用您当前的模式,您无法做到。但是,您可以在单个事件处理程序中按顺序调用它们,如下所示:

&#13;
&#13;
def as_ufunc(nin, nout):
    def _decorator(func):
        return np.frompyfunc(func, nin, nout)
    return _decorator

@as_ufunc(2, 1)
def sum_relative(a, b):
    """
    Docstring
    """
    return (1 + a) * (1 + b) - 1
&#13;
Join on cast(playerx/10 as integer) = cast(ballx/10 as integer) and 
cast(playery/10 as integer)  = cast(bally/10 as integer)

if ((integer) playerx/10 = (integer) ballx/10) {
}
&#13;
&#13;
&#13;

答案 1 :(得分:2)

使用如下所示的回调

&#13;
&#13;
var firstFunction = function(callback) {
  alert('First');
  callback();
};
var secondFunction = function() {
  alert('Second')
};

$('#press').click(function() {
  firstFunction(secondFunction);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button id="press">press</button>
&#13;
&#13;
&#13;