在.live()下运行$(element).pulsate()

时间:2012-12-23 07:13:48

标签: jquery

我在页面上动态创建了元素。 我希望使用$(element).pulsate()

对这些元素进行清除

事情是它不起作用,因为我们是在运行页面加载后创建的。 我注意到有一个jquery .live()命令。 如何在live命令下运行pulsate()

2 个答案:

答案 0 :(得分:1)

如果您需要根据点击事件使其产生脉动,可以使用.on()

$(container).on('click', selector, function() {
    $(this).pulsate(...);
});

自1.7 {/ em>

以来,已弃用.live()

其中container是DOM树中的元素,在您的应用运行时未删除,selector是相对查询(锚定到容器),用于匹配您希望脉动的元素点击时。

示例

<div id="container"></div>

某些代码会附加一个新元素。

$('#container').append('<div class="bla">bla</div>');

然后,此代码可用于实现您的目标:

$('#container').on('click', '.bla', function() {
    $(this).pulsate(...);
});

答案 1 :(得分:0)

  

事情是它不起作用,因为我们是在运行页面加载后创建的。

因此,在创建元素后,将$(element).pulsate();与适当的选择器或元素实例一起使用。您还没有说过如何/何时创建它们,所以我不知道它是在事件或计时器上还是什么,但无论哪种方式,最终都会运行代码来创建元素。所以告诉他们作为代码的一部分脉动。 E.g:

/* ...add a bunch of content to #foo... */
$("#foo").pulsate();

您可以在创建新元素(class="new")时使用类,这样您就可以盲目地执行此操作:

$(".new").pulsate().removeClass("new");