jQuery 和 CSS 冒号选择器

标签 jquery css dom jquery-selectors

在 jQuery 中,假设我们有两种方式来浏览 DOM 元素;

  1. 通过使用 CSS 冒号选择器(例如 var x = $("#someElement:after"))
  2. 通过 jQuery 函数(例如 var x = $("#someElement").prev())

现在我的问题是:

  1. 这两种情况的返回类型是否相同?
  2. 在 DOM 中导航有什么区别 方法?
  3. 我们可以对这两个结果应用相同的 jQuery 函数吗 声明?例如。 x.css("someProp","someVal")

最佳答案

:after 是 CSS 伪元素,jQuery 不支持。 jQuery 选择器的文档在这里:http://api.jquery.com/category/selectors/

我猜您正在寻找的等效项是同级选择器:+:

// select whatever element comes after #someElement
var x = $("#someElement + *");

因此,一般来说,如果您在 jQuery 查询中使用标准 CSS 选择器,那么 jQuery 可能会将搜索移交给浏览器(如果支持)。如果你使用 jQuery 函数,那么这些快捷方式就无法完成。我的一般经验法则是尽可能使用 CSS 选择器,除非它会损害可读性。

无论使用何种方法查找元素,返回结果都是完全相同的。

关于jQuery 和 CSS 冒号选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7038686/

相关文章:

javascript - 使用 Id 修改页面

javascript - jstree 显示原始 json,而不是树

html - Firefox 中图像的宽度与插入的图像宽度不同

Jquery 在单击时将类添加到元素,从上一个元素中删除相同的类。

jquery - 任何 slider (几个问题)

javascript - 打开多个切换框而不是 1 个

css - iPhone 对最小宽度 : 768px 进行媒体查询

AngularJS 服务中的 DOM 操作

javascript - appendChild 不在指定父节点的子节点列表末尾添加节点

javascript - 如何在 Angular 中正确实现 DOM 操作?