【发布时间】:2012-08-05 01:31:01
【问题描述】:
我一直在使用标准方法来隐藏/显示一个类,即:
$('.myClass').show(); // or .hide() or .toggle()
但是,如果myClass 被隐藏并创建了类的新元素,则它是可见的,因为.hide() 不影响它。为了解决这个问题,如果类在创建时隐藏,我将隐藏新创建的元素。
但是,有没有办法让我可以隐藏该类,使其自动应用于随后创建的元素?
我正在考虑这种模式:$('#container').on('click', '.myClass', function () {...,它将处理程序附加到稍后创建的元素。本质上,我想用 display 属性来模拟它。
【问题讨论】:
-
我认为没有?我能想到的最接近的是将某些东西绑定到 DOMNodeInserted!
-
你可以有一个
.hidden类,而不是使用show()/hide(),并且每当你创建一个新元素时,你首先给它那个类。顺便说一句,如果您是创建和初始化这些元素的人,您可以轻松地在初始化过程中隐藏它们。 -
@ŠimeVidas 是的,我已经在其他地方使用了
.hidden类,尽管在这里使用它并没有太大的价值,因为我仍然需要检查myClass元素当前是否具有该类hidden然后将第二个类 (hidden) 添加到新创建的元素中。
标签: javascript jquery class hide