当前位置:首页 > JavaScript

js实现jqueryindex

2026-04-06 07:16:15JavaScript

js实现jqueryindex

js实现jqueryindex

实现 jQuery 的 index() 方法

在原生 JavaScript 中,可以通过遍历 DOM 元素来模拟 jQuery 的 index() 方法。index() 方法用于获取当前元素在其父元素的子元素集合中的位置索引。

方法一:使用 Array.prototype.indexOf

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

// 示例用法
const el = document.querySelector('.target');
console.log(index(el)); // 输出元素在父元素中的索引

方法二:直接遍历兄弟节点

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

// 示例用法
const el = document.querySelector('.target');
console.log(index(el)); // 输出元素在父元素中的索引

方法三:支持选择器过滤(类似 jQuery 的 index(selector)

function index(element, selector) {
    if (!element || !element.parentNode) {
        return -1;
    }
    const siblings = selector 
        ? Array.from(element.parentNode.querySelectorAll(selector))
        : Array.from(element.parentNode.children);
    return siblings.indexOf(element);
}

// 示例用法
const el = document.querySelector('.target');
console.log(index(el, '.child')); // 输出元素在符合选择器的兄弟元素中的索引

注意事项

  • 如果元素没有父节点或传入的不是 DOM 元素,函数会返回 -1
  • jQuery 的 index() 方法还支持传入选择器或元素作为参数,上述方法三模拟了这种功能。
  • 原生实现与 jQuery 的行为可能略有差异,需根据实际需求调整。

标签: jsjqueryindex
分享给朋友:

相关文章

js轮播图实现原理

js轮播图实现原理

轮播图的基本原理 轮播图通过动态切换显示的内容(图片、文本等)实现视觉上的滑动效果。核心原理是利用CSS和JavaScript控制元素的显示与隐藏,或通过变换位置实现滑动动画。 实现方法一:…

js实现驼峰

js实现驼峰

实现驼峰命名的几种方法 使用正则表达式和字符串替换 通过正则表达式匹配字符串中的特定模式(如下划线或短横线),并将其后的字母转换为大写,同时移除分隔符。 function toCamelCase(s…

js实现滑动

js实现滑动

实现滑动效果的方法 在JavaScript中实现滑动效果可以通过多种方式完成,以下是几种常见的实现方法: 使用CSS过渡和JavaScript触发 通过CSS定义过渡效果,JavaScript控制触…

js实现显示隐藏

js实现显示隐藏

显示隐藏的实现方法 在JavaScript中,实现元素的显示和隐藏可以通过多种方式完成。以下是几种常见的方法: 修改CSS的display属性 通过改变元素的display属性可以在none(隐藏)…

js验证码实现

js验证码实现

验证码的基本原理 验证码(CAPTCHA)用于区分人类用户和自动化程序。常见类型包括图形验证码、滑动验证码、短信验证码等。JavaScript 可用于前端验证码的生成和验证逻辑。 图形验证码实现 使…

js实现刷新页面

js实现刷新页面

刷新页面的方法 在JavaScript中,可以通过多种方式实现页面刷新。以下是几种常见的方法: 使用 location.reload() 调用 location.reload() 方法可以重新加载当…