Jquery 方法不处理动态添加的项
我有几百个Jquery 方法不处理动态添加的项,jquery,ajax,dynamic,Jquery,Ajax,Dynamic,我有几百个 <button class="lb"> <div class="l"></div> <div class="c">2</div> <div class="r"></div> </button> 但这只适用于pageload上加载的元素,而不适用于新的per-JS插入元素 我找不到我遗漏的东西,如果有任何提示,我将不胜感激 谢谢! Raphael您缺少将.on()用作代理的一些
<button class="lb">
<div class="l"></div>
<div class="c">2</div>
<div class="r"></div>
</button>
但这只适用于pageload上加载的元素,而不适用于新的per-JS插入元素
我找不到我遗漏的东西,如果有任何提示,我将不胜感激
谢谢!
Raphael您缺少将
.on()
用作代理的一些概念:
$(' --CONTEXT-- ').on('click', ' -- YOUR ELEMENT -- ', function () {
});
// like-wise to "unbind" using the new methodology
// you would use .off()
$(' --CONTEXT-- ').off('click', '-- YOUR ELEMENT --');
因此,以示例形式来说:
$(document).on('click', '.lb', function () { });
但当然,这会使上下文(或它将“冒泡”到的位置)变得太高。尝试在任何可能出现此项的位置使用大型父项,这将提高性能
$('#someParent').on('click', '.lb', function () { });
您缺少将
.on()
用作委托的一些概念:
$(' --CONTEXT-- ').on('click', ' -- YOUR ELEMENT -- ', function () {
});
// like-wise to "unbind" using the new methodology
// you would use .off()
$(' --CONTEXT-- ').off('click', '-- YOUR ELEMENT --');
因此,以示例形式来说:
$(document).on('click', '.lb', function () { });
但当然,这会使上下文(或它将“冒泡”到的位置)变得太高。尝试在任何可能出现此项的位置使用大型父项,这将提高性能
$('#someParent').on('click', '.lb', function () { });
对
.lb
或文档的父级使用事件委派。正如@Zolton Toth所指出的,您应该使用off
而不是弃用的unbind
$(document).on("click", ".lb", function(event) {
$('.c', this).html(parseInt($('.c', this).html()) + 1);
$(this).off('mouseout');
});
对.lb
或文档的父级使用事件委派。正如@Zolton Toth所指出的,您应该使用off
而不是弃用的unbind
$(document).on("click", ".lb", function(event) {
$('.c', this).html(parseInt($('.c', this).html()) + 1);
$(this).off('mouseout');
});
+将不推荐使用的.unbind()
更改为.off()
oh。。。这句话是我在上面使用另一种方法时留下的。。。谢谢@RaphaelJeger:那么你不想解除任何绑定?+将不推荐使用的.unbind()
更改为.off()
哦。。。这句话是我在上面使用另一种方法时留下的。。。谢谢@RaphaelJeger所以您不想解除任何绑定?查看,转到直接和委派事件部分。它向您展示了其中的两个示例。查看,转到直接和委派事件部分。它向您展示了其中的两个示例。您希望尽量不要使用$(document)
,这就是.live()
以及用作上下文的内容。尝试使用较低级别的家长,这样在委派活动期间就不会有太多的冒泡。是的,谢谢!我有一个周围的div,我使用它的类作为上下文。我想我应该这样做?是的,只需确保.lb
不会出现在其他任何地方(至少是您希望使用此单击功能的任何地方)。你要试着不要使用$(document)
,这就是.live()
等用来作为上下文的东西。尝试使用较低级别的家长,这样在委派活动期间就不会有太多的冒泡。是的,谢谢!我有一个周围的div,我使用它的类作为上下文。我想我应该这样做?是的,只需确保.lb
不会出现在其他任何地方(至少是您希望使用此单击功能的任何地方)。你会准备好的。