我有一些由一些Javascript生成的代码(我不想调整它,它是巨大的!)。作为一种解决方法,我可以用Jquery和CSS实现我想要的东西,但不知道如何去做。
我有几个要点,我希望找到课程bubble-lorem
的所有内容,然后我想将一个类添加到名为li
的父price
。我认为Jquery会这样做,但不知道如何实现它。
问题的第二部分,一旦它将课程price
添加到所有正确的li
,我想添加一个课程clear
到了下一个li
之后。例如,如果连续3个<li class="price">
,我想在最后一个li
之后找到下一个<li class="price">
并为其添加一个类?
<li>
<span style="margin-left: 0px; width: 240px;" class="bubble bubble-default" data-duration="18"></span>
<span class="date">01/2015-12/2016</span>
<span class="label">Phase 1</span>
</li>
<li>
<span style="margin-left: 30px; width: 30px;" class="bubble bubble-lorem" data-duration="2"></span>
<span class="date">04/2015-06/2015</span>
<span class="label">£0.8</span>
</li>
答案 0 :(得分:2)
您的两个请求都可以通过单行来实现:
$('.bubble-lorem').closest('li').addClass('price');
$('.price').next('li:not(.price)').addClass('clear');
答案 1 :(得分:0)
第一部分:您需要使用:has
选择器:
$('li:has(.bubble-lorem)').addClass('price');
第二部分:
$('.price').next('li:not(.price)').addClass('clear');
<强> Working Demo 强>
答案 2 :(得分:0)
对于你的问题的第一部分:
// This finds all elements with 'bubble-lorem' class and
// adds 'price' class to their parents
$( ".bubble-lorem" ).parent().addClass( "price" );
问题的第二部分:
// This finds the elements with 'price' class whose next li does not have
// 'price' class (which will be the last element) and adds 'clear' class to it
$('.price').next('li:not(.price)').addClass('clear');
答案 3 :(得分:0)
试试这个:
$('.bubble-lorem').parent('li').addClass('price');
$('.price').last().next().addClass('clear');
答案 4 :(得分:0)
答案1:
$("span.bubble-lorem").parent().addClass('price');
答案2:
$("li.price").next().addClass('clear');