Jquery: выбрать все под классом ".last" сделать несколько вариантов для каждого элемента - PullRequest
0 голосов
/ 24 февраля 2012

Я просто хочу выбрать каждый элемент после класса ".last".

+++ ВЫБРАТЬ ВСЕ ПОД КЛАССОМ +++

-> Все строки HTML-элементов здесь.

Аналогично ...

HTML:

<body>
    <div class="option"></div>
    <div class="option"></div>
    <div class="option"></div>
    <div class="last"></div>
    <div class="option"></div>
    <div class="option">
    <img src="a.jpg"/>
    <table>
       <td><tr>1</tr></td>
       <td><tr>2</tr></td>
    </table>
    </div>
    <div class="option"></div>
</body>

Jquery:

$('*').nextAll(".last").each(function (i) {

       $(this).css('background-color','red');
       function({...
              this.text(..);
              etc...
       });

});

Что я хочу дополнить:

<body>
    <div class="option"></div>
    <div class="option"></div>
    <div class="option"></div>
    <div class="last"></div>
    <div class="option" style="background-color:red;"></div>
    <div class="option" style="background-color:red;">
         <img style="background-color:red;" src="a.jpg"/>
             <table style="background-color:red;">
                  <td style="background-color:red;">
                     <tr style="background-color:red;">abc</tr>
                  </td>
                  <td style="background-color:red;">
                     <tr style="background-color:red;">abc</tr>
                  </td>
             </table>
    </div>
    <div class="option" style="background-color:red;"></div>
</body>

РЕДАКТИРОВАТЬ:

НУЖНА ФУНКЦИЯ В ЭТОМ КАК ()?Мне нужно выбрать ВСЕ элементы ниже .last класса и применить к нему несколько опций.

Ответы [ 2 ]

2 голосов
/ 24 февраля 2012

Вам не нужно использовать each, так как jQuery сможет применить ваше правило CSS ко всем вашим элементам.

$('.last').nextAll().each(function() {
    $(this).css('background-color', 'red');
    // more code...
});

В качестве примечания. У вас есть ошибки в вашем HTML. (неработающий код), я предполагаю, что это просто опечатка для примеров, но вы можете проверить.

1 голос
/ 24 февраля 2012

для этого вам не нужен javascript, это правило css работает для вас:

​.last ~ *{
     background-color:red;        
}​

редактировать: сравнить до IE7

вот вам соответствующая скрипка .

...