问题标签 [jquery-callback]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
231 浏览

jquery - 如何跟踪 Jquery 插件中的节点列表(如果客户端可以删除这些 DOM 节点)

我正在编写一个 jQuery 插件,它“指向”DOM 中的一定数量的节点。然而,如果我尝试让我的插件保存对一组节点的引用,我担心它们会“过时”。

(虽然我意识到 JavaScript 是垃圾收集并且不会崩溃,但我希望能够使我的列表保持最新,而不是保留应该被 GC 处理的东西。)

我首先想到的是可能有某种钩子。但似乎没有一个看起来值得信赖的标准:

使用 JQuery,是否可以在 DOM 元素调用 .remove() 时运行函数?

从 DOM 树中删除元素的回调?

jQuery remove() 回调?

这让我想知道通过在节点上放置类属性来维护节点列表。这样,他们在列表中的成员将与他们一起旅行。但正如人们可能担心的那样,枚举起来可能会非常缓慢,这就是为什么您应该在 classes 之前将查询表述为标签的原因。

除了潜在的性能问题之外,我想知道是否认为插件出于这种目的将类插入 DOM 节点是一种糟糕的形式,这与样式无关。(其中一个更好的事情.data()是它相对带外,除了这个列表问题之外,这就是我正在使用的。)

这似乎是一个很常见的问题,其他插件已经解决了。我很想将类解决方案用于它的“正确性”属性,即使它速度较慢。但是有没有一种更快、更规范的方法可以两全其美?

0 投票
4 回答
9933 浏览

javascript - 从未调用过 jQuery ajax 回调

Javascript 代码,使用 jQuery 1.7:

使用 Firebug,我可以看到发送了 HTTP GET 请求并返回了代码为 200 的“hello world”响应,所以一切看起来都很好。但是永远不会调用回调。

我不知道出了什么问题;这应该很简单吧?

0 投票
1 回答
976 浏览

jquery - jQuery - 从 getJson 请求返回内容到调用者函数时的最佳实践

$.getJson将请求结果中的内容返回给调用者函数时,最佳实践是什么?我有一个名为的函数$.fn.getSomeData,其中有一个$.getJson调用(这个函数在一个 JS 文件中,JSP 想要使用我的 web 服务必须导入)。

然后在调用 JSP 内部,一个函数将调用我的$.fn.getSomeData函数。

因为我的$.getjson请求是异步的,所以我必须等待回调函数执行才能考虑处理 JSON。将结果数据传递回调用 JSP 中的函数的最佳方法是什么?

我读过的其他选项包括将 Div 传递到$.fn.getSomeData方法中,然后在 $.getJson 回调函数中,我会处理 json 并按照我希望的方式附加到 Div。

第二种选择是将函数传递给$.fn.getSomeData. 然后可以在$.getjson回调函数中调用此函数。

有人可以推荐一个最佳实践吗?我不想使用将 Div 传递给我的$.fn.getSomeData函数的选项,因为我想减少外部 JS 文件中的耦合。

还有一种方法可以将回调函数添加到我从 JSP 发出的调用中$.fn.getSomeData,一旦$.getjson回调执行,它就会以某种方式触发?

期待听到您的建议。

0 投票
3 回答
286 浏览

callback - 带有回调的jQuery“存在”函数

扩展:https ://stackoverflow.com/a/31047/235633

有没有办法可以扩展这个自定义 jQuery 函数以使用回调?本质上,我希望能够拥有一个选择器列表并检测它们的存在,如果它们存在,我需要显示它们。

与其编写一千个 if 语句,我更愿意编写一个使用回调和“this”的函数。

那家伙写道:

但是我需要:

0 投票
2 回答
12110 浏览

jquery - jQuery $.animate() 多个元素但只触发一次回调

如果您选择一个类或元素集合以使用 jQuery 进行动画处理:

然后还使用回调函数,你最终会得到很多不必要的animate()调用。

可以说这只是糟糕的代码和/或设计 - 但是我可以做些什么来避免animate()只有一个调用使用回调进行多次调用,以及执行大量不必要的回调并搞砸我的代码/预期的行为?

理想情况下,我只能编写一个只运行一次的“一次性”回调 - 否则也许有一种有效的方法来测试是否已经被 jQuery 动画化了?

示例: http: //jsfiddle.net/uzSE6/(警告 - 这将显示大量警报框)。

0 投票
4 回答
1769 浏览

javascript - javascript 对象、回调和 this 关键字

我无法弄清楚如何在 jquery ajax 回调中正确引用“正确”“this”。

我有一个 javascript 类,我在其中定义回调:

在课堂之外我有:

现在我相信 foo1.onCallback 中的“this”指的是 ajax 调用附加到的 html 元素。如何确保“this”指的是 foo1?有一个更好的方法吗?

0 投票
1 回答
388 浏览

jquery - jquery一次动画两个类

我的animate()功能有问题。我想首先为 2 个对象设置动画,然后等待 4 秒并再次为该对象设置动画。我的代码是这样的:

这对.show班级来说非常有效,但有时.caption在之前的动画速度非常快.show。我试图设置.caption一个回调函数.show以防止.caption过早设置动画,如下所示:

但在这种情况下,它会在.show完成后进行动画处理。它正在执行,但我想同时为这两个类设置动画。有什么解决办法吗?谢谢 ...

0 投票
1 回答
83 浏览

ajax - 浏览器如何知道接收跨域 JSONP 时需要执行回调

当我在做跨域 AJAX 时,返回的资源(围绕 JSON 返回的回调)如何导致客户端中的回调方法被执行。

此功能(回调的执行)是否已编程到 AJAX 客户端中,或者是浏览器的这一部分,它在从服务器接收包装数据时触发 clientCallBack('json_data')并传递它'json_data'

0 投票
1 回答
525 浏览

javascript - 加载 Infinite Scroll 页面时,加载页面的 CSS 会发生变化

在我正在构建的这个站点上,我有 Infinite Scroll、Isotope 和一个名为 .mb_miniplayer_play 的音频播放器。我遇到的问题是当加载新页面时,以前加载的页面上的 css 会发生变化。假设第 2 页已加载,第 1 页的 css 更改。但它只是一种元素。

我尝试了各种方法,但似乎没有什么能让所有页面看起来和正常工作。

代码如下:

有没有人经历过这种情况。我认为我的 jquery 代码不正确或遗漏了什么,但我不知道是什么。

这是 HTML 标记...正在更改的 div 是 .download。加载页面上'Top'的css设置需要使其看起来正确是top:-114,而新加载的页面只需要top:-24看起来正确。

0 投票
2 回答
284 浏览

jquery - 在移动到新页面之前,确保在 Jquery 单击功能中获取图像。

我正在使用 jQuery 1.2.6 :(

当用户单击 ID=LINKID 并具有锚标记的 Html 元素时,他将被重定向到新页面。我想确保在浏览器移动到另一个页面之前获取一个小图像。

有没有办法在jQuery中使用回调或任何其他机制。

如果我在上面的代码片段之后添加这样的 hack。

我可以看到正在获取的图像,但这将停止与标签相关的功能