Questions tagged «callback»

回调是一段代码(即函数或方法或lambda表达式的地址或引用),作为参数传递给其他代码,希望在某些方便的时间回调(执行)该参数。此标记应与有关API的问题一起使用,该API使用回调在操作完成时通知调用方。将事件处理标签用于涉及订阅事件的问题,例如在GUI框架中。

4
使用自定义比较功能对列表列表进行排序
我知道有几个这样的问题,但是它们似乎对我没有用。 我有一个列表,5元素乘以50。我想通过对每个元素应用自定义比较功能来对列表进行排序。此函数计算要对元素进行排序的列表的适用性。我创建了两个函数,比较和适应性: def compare(item1, item2): return (fitness(item1) < fitness(item2)) 和 def fitness(item): return item[0]+item[1]+item[2]+item[3]+item[4] 然后我尝试通过以下方式致电给他们: sorted(mylist, cmp=compare) 要么 sorted(mylist, key=fitness) 要么 sorted(mylist, cmp=compare, key=fitness) 要么 sorted(mylist, cmp=lambda x,y: compare(x,y)) 我也尝试了具有相同参数的list.sort()。但是无论如何,函数都不会将列表作为参数,而是作为参数None。我不知道为什么,这主要来自C ++,这与我对回调函数的任何想法相矛盾。如何使用自定义功能对列表进行排序? 编辑 我发现了我的错误。在创建原始列表的链中,一个函数未返回任何内容,但使用了返回值。抱歉打扰了

7
将变量传递给jQuery AJAX成功回调中的函数
我正在尝试通过jQuery AJAX调用预加载一些图像,但是在将(url)字符串传递到AJAX调用的成功函数中的函数时遇到了实际问题(如果有意义)。 这是我的立场代码: //preloader for images on gallery pages window.onload = function() { setTimeout(function() { var urls = ["./img/party/"]; //just one to get started for ( var i = 0; i < urls.length; i++ ) { $.ajax({ url: urls[i], success: function(data,url) { $(data).find("a:contains(.jpg)").each(function(url) { new Image().src = url + $(this).attr("href"); …
74 jquery  ajax  callback 

8
带有回调的Python中的any()函数
Python标准库定义了一个any()函数 如果iterable的任何元素为true,则返回True。如果iterable为空,则返回False。 仅检查元素的取值为True。我希望它能够因此指定一个回调来告诉某个元素是否符合要求,例如: any([1, 2, 'joe'], lambda e: isinstance(e, int) and e > 0)

2
jQuery / Ajax-$ .ajax()将参数传递给回调-使用好的模式?
我从以下代码开始: function doSomething(url) { $.ajax({ type: "GET", url: url, dataType: "xml", success: rssToTarget }); } 我想使用的模式: //where elem is the target that should receive new items via DOM (appendChild) function doSomething(url, elem) { $.ajax({ type: "GET", url: url, dataType: "xml", success: rssToTarget(elem) }); } 我认为我无法以这种方式使回调起作用,对吗?正确的模式是什么?我不想使用全局变量来临时保存elemor或elem名称。

5
更新面板回发后如何执行JavaScript回调?
当用户将页面上的某些元素悬停时,我正在使用jQuery提示插件来显示帮助提示。 使用CSS选择器加载页面后,我需要注册插件事件。 问题是我使用的是ASP.NET更新面板,并且在第一次回发之后,提示不再起作用,因为更新面板会替换页面内容,但不会重新绑定javascript事件。 我需要一种在更新面板刷新其内容之后执行javascript回调的方法,因此我可以重新绑定javascript事件以使提示再次起作用。 有什么办法吗?


3
实现采用块作为回调的方法
我想写一个类似这样的方法: +(void)myMethodWithView:(UIView *)exampleView completion:(void (^)(BOOL finished))completion; 我基本上已经从Apple的一种类方法中删除了以下语法UIView: + (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion; 并希望它像这样使用: [myFoo myMethodWithView:self.view completion:^(BOOL finished){ NSLog(@"call back success"); }]; 我的问题是我该如何实施?如果有人可以指出正确的文档,那将是很好的,并且非常感谢一个非常基本的示例(或者在Stack Overflow上有类似的答案-我找不到)。对于委托人,我还是不太了解,以确定这是否是正确的方法! 我已经在实现文件中给出了一个我期望的粗略示例,但是由于我找不到信息,所以猜测是可行的。 + (void)myMethod:(UIView *)exampleView completion:(void (^)(BOOL finished))completion { // do stuff if (completion) { // what sort of syntax goes here? If I've …

9
等待带有动画的功能完成,直到运行另一个功能
我在正常(非ajax)函数中遇到了问题,每个函数中都包含很多动画。目前,我只是具有一个setTimeoutbetween函数,但这并不是完美的,因为没有浏览器/计算机是相同的。 附加说明:它们都有碰撞的单独动画/等。 我不能简单地将一个放在另一个的回调函数中 // multiple dom animations / etc FunctionOne(); // What I -was- doing to wait till running the next function filled // with animations, etc setTimeout(function () { FunctionTwo(); // other dom animations (some triggering on previous ones) }, 1000); 无论如何在js / jQuery中有: // Pseudo-code -do FunctionOne() -when …

10
如何强制顺序执行Javascript?
我只发现了涉及类,事件处理程序和回调的相当复杂的答案(在我看来,这似乎是一种大锤方法)。我认为回调可能有用,但我似乎无法在最简单的上下文中应用这些回调。请参阅以下示例: <html> <head> <script type="text/javascript"> function myfunction() { longfunctionfirst(); shortfunctionsecond(); } function longfunctionfirst() { setTimeout('alert("first function finished");',3000); } function shortfunctionsecond() { setTimeout('alert("second function finished");',200); } </script> </head> <body> <a href="#" onclick="javascript:myfunction();return false;">Call my function</a> </body> </html> 这样,第二个功能在第一个功能之前完成;强制第二个功能延迟执行直到第一个功能完成的最简单方法是什么(或有没有?)? - -编辑 - - 因此,这是一个垃圾示例,但是感谢David Hedlund,我在这个新示例中看到了它确实是同步的(以及在测试过程中使浏览器崩溃!): <html> <head> <script type="text/javascript"> function myfunction() { …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.