Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Изменение класса для конкретного td (https://javascript.ru/forum/css-html/79662-izmenenie-klassa-dlya-konkretnogo-td.html)

Quark_ 05.03.2020 17:24

Изменение класса для конкретного td
 
Есть таблица:
<table>
<tbody>
<tr class="days">
<td></td>
<td></td>
<td></td>
<td><a href="/>ссылка</a></td>
<td></td>
<td></td>
<td><a href="/>ссылка</a></td>
</tr>
</tbody>
</table>


Необходимо, чтобы при наведении на ссылку, элемент td (в котором находится ссылка) получал класс background.

Вот такой скрипт дает класс сразу всем td, подскажите как поправить?

jQuery(function(){
  jQuery('table tr td a').hover(function(){
  var parent=jQuery(this).parents('tr').eq(0);
  parent.find('td').toggleClass('background');
  })
});

рони 05.03.2020 17:49

Quark_,
<!DOCTYPE html>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  td.background {
      background-image: -webkit-linear-gradient(top, #FFFFFF, #000000);
      background-image: linear-gradient(to bottom, #FFFFFF, #000000);
      transition: .5s;
      transform: scale(1.2);

  }
  td.background a{
      color: #FFFFFF;

  }
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
jQuery(function() {
   jQuery('td').on('mouseenter mouseleave', 'a',function(event) {
   event.delegateTarget.classList.toggle('background');
})
});
  </script>
</head>
<body>
<table>
<tbody>
<tr class="days">
<td></td>
<td></td>
<td></td>
<td><a href=""/>ссылка</a></td>
<td></td>
<td></td>
<td><a href=""/>ссылка</a></td>
</tr>
</tbody>
</table>
</body>
</html>


Часовой пояс GMT +3, время: 20:18.