jquery - 如何在数据表的响应状态下检测最后一个可见列

标签 jquery css datatables

我想检测响应式 Datatables 中的最后一个可见列。我的目标是在每行的悬停状态下添加 border-right。

由于 last-child 不起作用,我尝试了 CSS 选择器 tr:hover td:visible:last,但它不起作用。

是否有任何解决方案可以让我获得可见列并在可见 TD 上添加 class?所以我可以使用 :last-of-type

应用 CSS

enter image description here

最佳答案

您可以使用 domsubtreemodified 和窗口调整大小事件检测窗口调整大小和 DOM 更改事件。你不能使用纯 css 来做到这一点,因为你不能将 :not 和 :style[] 选择器组合在一起

$(window).resize(function(){
  $('td:visible:last').css('color', 'red');
});
$(document).ready(function(){
  $('td:visible:last').css('color', 'red');
});
$('table , table td').on("DOMSubtreeModified",function(){
  $('td').css('color', 'black');
  $('td:visible:last').css('color', 'red');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
<tbody>
<td>Home1</td>
<td>Home2</td>
<td>Home3</td>
<td style="display:none">Home4</td>
<td style="display:none">Home5</td>
<td style="display:none">Home6</td>
</tbody>
</table>

关于jquery - 如何在数据表的响应状态下检测最后一个可见列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53929677/

相关文章:

javascript - 将输入文本字段显示为纯文本

javascript - 如何从 JSON 数组按月排序对象?

javascript - 当用户试图离开页面窗口或关闭选项卡时如何显示弹出窗口?

jquery - 从 jQuery 函数更新 Angular 5 变量值和 View 中的绑定(bind)

php - 使用ajax更新数据库中的表

html - 让子元素不包裹在溢出隐藏的div中

html - 我网站中的响应元素

javascript - 有时 ajax 有效,有时无效,单击行功能也不起作用

javascript - 多个组的 jQuery 数据表总和/小计

javascript - 使 Accordion 的整个标题部分可点击