jQuery对于vanilla JavaScript类列表的等价物是什么?
我正在和两个熟人合作一个项目,我被要求将我的选择器设置为两种类型jQuery对于vanilla JavaScript类列表的等价物是什么?,javascript,jquery,html,Javascript,Jquery,Html,我正在和两个熟人合作一个项目,我被要求将我的选择器设置为两种类型 document.getElementById("thisDiv"); 或者jQuery选择器,比如 $("#thisDiv"); 为了保持一致性。我决定使用jQuery选择器,然后遇到了一个问题,即使用普通JavaScript选择器的类列表似乎不能使用jQuery等价物 document.getElementById("thisDiv").classList.remove("hidden"); 在哪里工作 $("#this
document.getElementById("thisDiv");
或者jQuery选择器,比如
$("#thisDiv");
为了保持一致性。我决定使用jQuery选择器,然后遇到了一个问题,即使用普通JavaScript选择器的类列表似乎不能使用jQuery等价物
document.getElementById("thisDiv").classList.remove("hidden");
在哪里工作
$("#thisDiv").classList.remove("hidden");
没有。是否有一个等价的jQuery选择器可以使用?粗略地说,您可以将jQuery看作是为DOM操作而设计的一组函数。从技术上讲,这就是我们所说的API(应用程序编程接口)。正如您已经知道的,您的web浏览器提供了一个类似于jQuery API的内置API。尽管两种API的用途相同,但存在一些关键差异:
$。fn
:
当然,jQuery必须加载到当前页面中,Stackoverflow就是这种情况。如您所见,有一个名为removeClass
的函数,您可以这样调用它:
$("#thisDiv").removeClass("hidden")
粗略地说,您可以将jQuery看作是为DOM操作而设计的一组函数。从技术上讲,这就是我们所说的API(应用程序编程接口)。正如您已经知道的,您的web浏览器提供了一个类似于jQuery API的内置API。尽管两种API的用途相同,但存在一些关键差异:
$。fn
:
当然,jQuery必须加载到当前页面中,Stackoverflow就是这种情况。如您所见,有一个名为removeClass
的函数,您可以这样调用它:
$("#thisDiv").removeClass("hidden")
没有与普通JavaScript
classList
等价的普通jQuery
jQuery等价物的唯一选项是向vanilla jQuery添加一个插件函数,该函数的作用类似于classList
does
我找到了这样一个插件的建议代码。它们的功能略有不同,但都返回一个规则的类名数组,而不是DOMtokenList,因此它们不支持以与使用classList
相同的格式在元素中添加或删除类。但是,如上@Phani Kumar M所述,使用普通jQuery add()或remove()方法不需要类列表
当然,获取类列表根本不需要jQuery,但为了代码清晰/简洁,为了方便起见,IE 9及以下版本(不支持
classList
)可能需要使用jQuery函数来获取类列表,或者仅仅是出于个人审美的原因。没有一种普通的jQuery可以与普通的JavaScript类列表相提并论
jQuery等价物的唯一选项是向vanilla jQuery添加一个插件函数,该函数的作用类似于classList
does
我找到了这样一个插件的建议代码。它们的功能略有不同,但都返回一个规则的类名数组,而不是DOMtokenList,因此它们不支持以与使用classList
相同的格式在元素中添加或删除类。但是,如上@Phani Kumar M所述,使用普通jQuery add()或remove()方法不需要类列表
当然,获取类列表根本不需要jQuery,但是对于IE 9及以下版本(不支持classList
),为了代码清晰/简洁,为了方便,或者仅仅出于个人审美的原因,可能需要jQuery函数来实现这一点。使用removeClass
-。您的代码将变成$(“#thisDiv”)。删除类(“隐藏”)
谢谢。如果你把它作为一个答案提交,我会选择它作为答案。知道2017年,十年前的“jQuery addClass/removeClass的香草JS等价物是什么?”这个比喻终于出现了,我真的很高兴。使用removeClass
-。您的代码将变成$(“#thisDiv”)。删除类(“隐藏”)
谢谢。如果你把它作为答案提交,我会选择它作为答案。知道2017年,十年前的“jQuery addClass/removeClass的普通JS等价物是什么?”这个比喻终于出现了,这让我非常高兴。这是关于浏览器开发工具中控制台的极好信息。教人钓鱼的方法!这个答案虽然被接受,但并没有回答所提出的问题。虽然它为特定用例提供了一种变通方法,并提供了一些jQuery的一般背景知识,但它并不试图回答jQuery是否有与vanilla classLi等价的工具