JQuery вызывает клик на основе свойств CSS - PullRequest
0 голосов
/ 22 марта 2012

У меня есть такая таблица:

<table id="myTable"><tr>
  <td class="col" style="background-color:red" onclick="funct1()"></td>
  <td class="col" style="background-color:blue" onclick="funct2()"><td>
</tr></table>

Как вызвать функцию щелчка, если я знаю только свойства цвета фона CSS?

Мне понадобится такая функция JQuery (псевдокод):

if ('$(#myTable > col ) have background-color = "blue" '){
  $(col with background-color blue).click();
}

Ответы [ 3 ]

3 голосов
/ 22 марта 2012
 $('myTabel > .col').filter(function(){
      return $(this).css('background-color') == 'blue'
 }).click();

Или, если это встроенный стиль:

 $('myTabel > .col[style="background-color:blue"]').click();

Но вы действительно должны дать этим элементам класс CSS, который влияет на их цвет:

<table id="myTable"><tr>
  <td class="col red"  onclick="funct1()"></td>
  <td class="col blue" onclick="funct2()"><td>
</tr></table>

Затем выберите это так:

$('#myTable >.col.blue').click();
0 голосов
/ 22 марта 2012

Нет эффективного способа сделать это, но вы можете выбрать все и уменьшить набор вручную следующим образом:

$( '*' ).filter( function( index ) {
    return $( this ).css( 'background-color' ) == '#0000ff';
} ).click();
0 голосов
/ 22 марта 2012

Дайте им еще один класс, например bg-red, bg-blue, тогда вы можете использовать $('.col').hasClass('bg-red')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...