Есть ли общий способ указания элементов в jQuery. Например, используя функцию $(this).find
или next.
Я пытаюсь создать кнопку, которая при копировании будет только активировать по одному.
В тот момент, когда кнопка дублируется, вывод копируется.
См. Пример.
<a href="#" class="vote-btn">button</a>
<p class="vote-number">+ 70,101</p> <a href="#" class="vote-btn">button</a>
<p class="vote-number">+ 70,101</p> <a href="#" class="vote-btn">button</a>
<p class="vote-number">+ 70,101</p>
$(".vote-number").hide();
$(".vote-btn").click(function () {
$(".vote-number").finish().show().fadeOut(5000);
});
$(".vote-number").finish()
будет нацеливаться на все элементы с vote-number
класса. Вместо этого вы хотите настроить таргетинг только на элемент рядом с кнопкой. Итак, используйте $(this).next(".vote-number")
для таргетинга.
$(".vote-btn").click(function(){
$(this).next(".vote-number").finish().show().fadeOut(5000);
});
next()
используйте prev()
. jsfiddle.net/X8AYd/19
$(".vote-number").hide();
$(document).on("click", ".vote-btn", function (e) {
$(this).prev(".vote-number").show().fadeOut(5000);
});
Вы можете использовать с .next()
поскольку использование .vote-btn
будет .vote-btn
только на первое появление того же самого, поэтому лучше использовать $(this).next(".vote-number')
который нацелен на следующий <p>
с классный vote-number
$(".vote-btn").click(function(){
$(this).next(".vote-number").finish().show().fadeOut(5000);
});
Попробуй это:
$(".vote-btn").click(function(){
$(this).next('.vote-number').finish().show().fadeOut(5000);
});
"For example using the $(this).find or next function."
... черт возьми, ты не пробуй их и посмотри, что происходит !!!