javascript - 在特定选择器中追加 div 并获取第一个

标签 javascript jquery

我有一个日历,我在其中选择一个与数组值匹配的日期,然后附加一个带有某种样式的div。但现在的问题是,当 day = 1 时,它还会选择下个月的第 1 天表格,因为这也在我的事件 slider

这是我的意思的图片: enter image description here

所以基本上我想做的是尝试选择我的 activer-slider 中的第一个,这是我如何将样式附加到特定日期的代码:

$('.swiper-slide-active').find('td').each(function(){ 
    if ($(this).text().trim() == splitDate[0].toString()) {
         $(this).first().empty().append('<div class="ex-done ex-base">' + splitDate[0] + '</div>');
    }
 })

正如您所看到的,我尝试使用 first() 方法选择第一个,但这不会改变任何内容。

最佳答案

不要在所有 td 元素上运行代码,而是先过滤它们。

$('.swiper-slide-active td:not(.text-muted)')
  .filter(function() {
    return $(this).text().trim() == splitDate[0].toString();
  })
  .empty()
  .append('<div class="ex-done ex-base">' + splitDate[0] + '</div>');
<小时/>

但请记住,当您选择第 30 个时,您会遇到相反的问题。它将突出显示上个月的 30 号。

因此,注意到上一个/下一个日期具有不同的颜色,我会假设它们具有不同的类别,并且您可能应该使用它来识别要过滤的当前月份日期。

关于javascript - 在特定选择器中追加 div 并获取第一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44318602/

相关文章:

javascript - Firebase 网络推送通知,点击无效

javascript - alfresco javascript 继承和路径

javascript - Jquery 错误 - 未捕获错误 : Syntax error, 无法识别的表达式

jquery - SignalR 和 ASP.net

jQuery - 在加载时添加按钮样式,并在单击其他按钮时删除样式。

javascript - 如何从 JavaScript 元素获取值

javascript - 如何使用javascript生成页码?

javascript - RXJS 6 处理 http Observables 的方式是什么?

javascript - 如何处理 jquery 中的 AJAX 错误

jquery - 强制 LI 出现在上一项的下一项上