在控制台中,我有:

$(".myCssClass")[0].parentNode
<li><span class="myCssClass">some text</span></li>

我想为父span添加CSS类,为标记<li>添加CSS类

我这样尝试过:
$(".myCssClass")[0].parentNode.addClass("test")
TypeError: undefined is not a function

我使用Jquery 1.5.2

最佳答案

addClass是jQuery对象的一种方法。使用$(".myCssClass")[0]时,您拥有的是真正的元素,而不是jQuery包装器。

那么你就可以:

  • 再次将其包装到jQuery对象中:
    $($(".myCssClass")[0].parentNode).addClass("test")
    
  • 仅适用于jQuery对象:
    $(".myCssClass").eq(0).parent().addClass("test")
    
  • 使用纯JavaScript添加类(旧浏览器不支持):
    $(".myCssClass")[0].parentNode.classList.add("test")
    
  • 09-17 11:27