当前位置:首页 > JavaScript

js 实现$方法

2026-03-15 08:28:50JavaScript

实现 $ 方法

在 JavaScript 中,$ 方法通常用于简化 DOM 操作,类似于 jQuery 的选择器功能。以下是几种实现方式:

js 实现$方法

基础实现

function $(selector) {
    return document.querySelector(selector);
}

扩展实现(支持多种参数类型)

function $(param) {
    if (typeof param === 'string') {
        return document.querySelector(param);
    } else if (typeof param === 'function') {
        document.addEventListener('DOMContentLoaded', param);
    } else if (param instanceof HTMLElement) {
        return param;
    }
}

类 jQuery 实现

function $(selector, context) {
    const elements = (context || document).querySelectorAll(selector);
    return elements.length === 1 ? elements[0] : Array.from(elements);
}

链式调用实现

function $(selector) {
    const elements = document.querySelectorAll(selector);
    return {
        elements,
        css: function(prop, value) {
            this.elements.forEach(el => el.style[prop] = value);
            return this;
        },
        hide: function() {
            this.elements.forEach(el => el.style.display = 'none');
            return this;
        },
        show: function() {
            this.elements.forEach(el => el.style.display = '';
            return this;
        }
    };
}

ES6 类实现

class $ {
    constructor(selector) {
        this.elements = document.querySelectorAll(selector);
    }

    css(prop, value) {
        this.elements.forEach(el => el.style[prop] = value);
        return this;
    }

    on(event, handler) {
        this.elements.forEach(el => el.addEventListener(event, handler));
        return this;
    }
}

这些实现可以根据具体需求进行调整和扩展。基础版本适合简单场景,而链式调用和类实现更适合需要更多功能的项目。

标签: 方法js
分享给朋友:

相关文章

js实现选项卡

js实现选项卡

实现选项卡的基本思路 选项卡通常由一组标签和对应的内容面板组成。点击标签时,显示对应的内容面板,隐藏其他面板。实现这一效果需要结合HTML结构、CSS样式和JavaScript交互逻辑。 HTML结…

js 实现vue

js 实现vue

Vue.js 的基本实现 在 JavaScript 中实现 Vue.js 的核心功能,可以通过数据绑定、响应式系统和虚拟 DOM 来实现。以下是实现 Vue.js 核心功能的简化版本。 数据响应式系…

js分组实现

js分组实现

分组实现方法 在JavaScript中,可以通过多种方式实现数组或对象的分组操作。以下是几种常见的方法: 使用Array.prototype.reduce() 通过reduce方法可以轻松实现数组分…

js实现抽奖

js实现抽奖

实现抽奖功能的基本思路 抽奖功能的核心是随机选择奖项并展示结果。可以通过数组存储奖项,利用随机数生成索引,最后通过动画增强用户体验。 准备奖项数据 定义一个数组存储奖项信息,每个奖项可以包含名称、图…

jquery的方法

jquery的方法

jQuery 常用方法分类 jQuery 是一个快速、简洁的 JavaScript 库,提供了大量简化 DOM 操作、事件处理、动画效果和 AJAX 交互的方法。以下是 jQuery 核心方法的分类和…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…