【问题标题】:Can I update a jQuery collection of objects?我可以更新 jQuery 对象集合吗?
【发布时间】:2014-01-23 05:34:26
【问题描述】:

我已经初始化了很多需要动画的元素,所以我只想初始化一次。我提前这么说是为了阻止您回答重新定义它,因为我必须重新定义动画中所有元素的所有事件。

我有一个包含几十个 li 的 ul,但是当我分离其中一个 Li 时,下一个动画仍然发生在初始化时存在的整个元素集合上。不在当前收藏中。

所以我需要一些方法来“更新”jquery 对象(LI 的集合)以删除不再存在的对象。

有什么提供的吗?

我不知道每个集合是否知道它是由什么制成的,甚至称它为“更新” 所以现在我只测试父元素是否仍然相同并且元素不为空。

谢谢。

【问题讨论】:

  • 我不确定您所说的“初始化许多元素”是什么意思。请显示一些代码。
  • Inited:向所有事件添加事件,将它们定位在屏幕上,从它们创建 JQ 集合等。我提到它是因为当它们制作动画时我不想再次计算它们,也不想删除它们/再次添加所有事件。他们已经开始了,我希望他们尽可能长时间地保持这种状态。

标签: loops each jquery htmlcollection


【解决方案1】:

代码示例可能对我们有很大帮助。

但我从你的问题中了解到的是,你有一个 jQuery 对象集合说“$listCollection”,从中删除一个 li 元素说“listElement”(DOM 对象,而不是 jQuery 对象),那么这就是你想要的

$listCollection.splice($listCollection.indexOf(listElement),1);

注意:如果 'listElement' 不在 '$listCollection' 中,上述代码会出现错误

【讨论】:

  • 我希望有一些更自动的东西,比如 JQ 足够聪明,知道它去了哪里。这个解决方案现在不适合我的需要,因为删除元素的脚本不知道在其他地方创建的集合。
  • 您必须放一些代码示例来说明您的需求,以便我可以为您提供相应的帮助
【解决方案2】:

好吧,简而言之,我所期望的是,jQuery 似乎没有提供任何东西。

我必须将集合变量设为全局变量,以便稍后依赖该集合的函数可以看到更新后的版本,而不是将其(集合变量)传递给不知道未来变化的事件函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-28
    • 2012-03-20
    • 1970-01-01
    • 2020-10-29
    • 2015-02-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多