سؤال

لدي بعض الكود مثل هذا:

<p>Lorem ipsum<a href=# class="a">link</a><span class="b">Text</span>More lorem ipsum<a href=# class="a">link</a><span class="b">Text 2</span>

وأود أن السماح للمستخدمين النقر link وكن قادرا على القيام بشيء ما مع الفضة (اجعله فلاشا، وإخفائه، أيا كان). أنا أستخدم jQuery، وهذا ما لدي حتى الآن:

$('.a').click(function() {
    $(this).nextUntil('.a').css('background-color', 'red');
 });

هذا يعمل طالما أنا مجتهد حول الروابط قبل المواقف، ولا توجد رمز آخر في النص. ومع ذلك، أنا لست سعيدا به، ويجب أن تكون هناك طريقة أفضل. لقد حاولت أيضا:

$('.a').click(function() {
    $(this).next('.b').css('background-color', 'red');
 });

ولكن هذا يختار كل امتداد الفصل b, ، لذلك ليس جيدا.

أنا جديد وخسارة. أسعى الحكمة.

هل كانت مفيدة؟

المحلول

$('a.a').click(function() {
    $(this).next('span.b').css('background-color', 'red');
 });

يجب أن تعمل بشكل جيد بالنسبة لك. يحصل على الشقيق مباشرة بعد.

نصائح أخرى

ربما يمكنك تجربة هذا؟

$(".a").click(function() {
    $(this).addClass("something_special");
    $(".something_special + .b").css({backgroundColor: "red"});
    $(this).removeClass("something_special");
});
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top