javascript - jQuery 相当于普通 JavaScript classList 的什么?

标签 javascript jquery html

我正在与两个熟人合作一个项目,他们要求我将选择器保留为普通 JavaScript,例如

document.getElementById("thisDiv");

或类似 jQuery 选择器

$("#thisDiv");

为了保持一致性。我决定使用 jQuery 选择器,然后遇到了一个问题,即与普通 JavaScript 选择器一起使用的 classList 似乎不适用于 jQuery 等效选择器。

document.getElementById("thisDiv").classList.remove("hidden");

有效,如

$("#thisDiv").classList.remove("hidden");

没有。是否有可以用于 jQuery 选择器的等效项?

最佳答案

粗略地说,您可以将 jQuery 视为一组为 DOM 操作而设计的函数。从技术上讲,这就是我们所说的 API(应用程序编程接口(interface))。如您所知,您的 Web 浏览器提供了类似于 jQuery API 的内置 API。尽管这两个 API 具有相同的用途,但存在一些关键差异:

  1. jQuery API 构建于浏览器的内置 API 之上。
  2. 与内置 API 不同,jQuery API 在任何浏览器中的工作方式都是相同的。
  3. API 结构和命名约定差异很大。

最后一点意味着您不能期望从一个 API 到另一个 API 找到完全相同的功能,换句话说,您必须阅读手册。

这里有一些帮助:http://api.jquery.com/category/manipulation/class-attribute :-)

另一个选择是询问浏览器的控制台。如果您使用的是 Chrome(Firefox 应该同样工作),请按 F12,打开“控制台”面板,然后尝试猜测您要查找的函数的名称。控制台将通过显示与您输入的内容相匹配的名称列表来提供帮助。 jQuery API 位于 $.fn:

autocomplete

当然jQuery必须在当前页面加载,Stackoverflow上就是这样。如您所见,有一个名为 removeClass 的函数,您可以这样调用它:

$("#thisDiv").removeClass("hidden")

关于javascript - jQuery 相当于普通 JavaScript classList 的什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46751831/

相关文章:

css - 视频元素大小差异(移动设备与桌面设备)

php - Appmobi Codeigniter 和 Facebook SDK JavaScript 与 PHP

javascript - 当鼠标悬停在这个形状上时,如何使标注窗口出现?

php - JQuery 验证不起作用

javascript - 如何在 ListView 中的每个图标的左侧弹出?

jquery - 重置段落更改

javascript - 比较用 ASP 编写的 html 实体和 JS 读取的 html 实体

javascript - 获得一流的内容

jQuery 菜鸟 : change border color of element on hover of another element

javascript - 查找父 DIV 的 ID 并将 DIV 淡出