当前位置:首页 > JavaScript

js实现 jquery index

2026-02-02 19:37:36JavaScript

js实现 jquery index

实现 jQuery 的 index() 方法

jQuery 的 index() 方法用于获取当前元素在其同级元素中的位置索引。以下是纯 JavaScript 的实现方式:

方法一:使用 Array.prototype.indexOf

function index(element) {
  if (!element || !element.parentNode) return -1;
  return Array.from(element.parentNode.children).indexOf(element);
}

方法二:遍历同级元素

function index(element) {
  if (!element || !element.parentNode) return -1;
  let children = element.parentNode.children;
  for (let i = 0; i < children.length; i++) {
    if (children[i] === element) return i;
  }
  return -1;
}

方法三:扩展 Element 原型

Element.prototype.index = function() {
  if (!this.parentNode) return -1;
  return Array.from(this.parentNode.children).indexOf(this);
};

使用示例

// 获取某个元素的索引
let element = document.querySelector('.target');
console.log(index(element)); // 使用方法一或二
console.log(element.index()); // 使用方法三

注意事项

  1. 这些实现只考虑元素节点,忽略文本节点等其他节点类型,与 jQuery 的行为一致。
  2. 如果元素没有父节点或不在 DOM 中,返回 -1。
  3. 索引从 0 开始计数,与 jQuery 的 index() 方法行为相同。

这些方法可以替代 jQuery 的 index() 功能,适用于现代浏览器环境。

js实现 jquery index

标签: jsjquery
分享给朋友:

相关文章

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…

jquery官网

jquery官网

jQuery 官网地址 jQuery 的官方网站是 https://jquery.com/。该网站提供以下核心内容: 下载 jQuery:提供最新版本的 jQuery 库(压缩版和未压缩版),支持…

jquery版本

jquery版本

jQuery 的版本历史及当前状态如下: 当前稳定版本 jQuery 的最新稳定版本是 3.6.4(发布于 2023 年 3 月),支持现代浏览器并修复了部分安全问题。 主要版本分支 j…

js实现复制到剪贴板

js实现复制到剪贴板

使用document.execCommand方法(传统方式,已废弃但部分浏览器仍支持) 该方法适用于旧版浏览器,但已被标记为废弃。执行前需确保文本已被选中: function copyToClipb…

js实现列表

js实现列表

使用 JavaScript 实现列表 JavaScript 提供了多种方式来实现列表功能,包括数组操作、DOM 元素动态生成等。以下是几种常见的实现方法: 使用数组存储列表数据 数组是 JavaS…