当前位置:首页 > JavaScript

js 实现jquery append

2026-04-07 16:24:24JavaScript

使用原生 JavaScript 实现 jQuery 的 append 方法

jQuery 的 append 方法用于向选定的元素内部末尾插入内容。以下是几种原生 JavaScript 的实现方式:

js 实现jquery append

使用 appendChild 方法

// 获取目标元素
const targetElement = document.getElementById('target');

// 创建要插入的新元素
const newElement = document.createElement('div');
newElement.textContent = 'This is appended content';

// 使用 appendChild 插入
targetElement.appendChild(newElement);

使用 insertAdjacentHTML 方法

// 获取目标元素
const targetElement = document.querySelector('.container');

// 使用 insertAdjacentHTML 在内部末尾插入 HTML
targetElement.insertAdjacentHTML('beforeend', '<div>Appended HTML</div>');

实现一个通用的 append 函数

function append(parent, content) {
    if (typeof content === 'string') {
        parent.insertAdjacentHTML('beforeend', content);
    } else if (content instanceof Node) {
        parent.appendChild(content);
    }
}

// 使用示例
const container = document.getElementById('container');
append(container, '<span>Text content</span>');
append(container, document.createElement('div'));

处理多个元素的插入

// 扩展 Node 原型以添加 append 方法
Node.prototype.append = function(...nodes) {
    nodes.forEach(node => {
        if (typeof node === 'string') {
            this.insertAdjacentHTML('beforeend', node);
        } else {
            this.appendChild(node);
        }
    });
};

// 使用示例
document.querySelector('ul').append(
    '<li>Item 1</li>',
    document.createElement('li')
);

注意事项

  • 原生 appendChild 只能插入 DOM 节点对象,不能直接插入 HTML 字符串
  • insertAdjacentHTML 可以插入 HTML 字符串但存在 XSS 风险,使用时应对内容进行转义
  • 现代浏览器已支持原生 Element.append() 方法,可以同时接受 DOM 节点和字符串参数

这些方法提供了类似 jQuery append 的功能,可以根据具体需求选择使用。对于需要支持旧浏览器的项目,建议使用 polyfill 或功能检测。

标签: jsjquery
分享给朋友:

相关文章

js实现倒计时

js实现倒计时

实现倒计时的基本方法 使用 JavaScript 实现倒计时功能可以通过 setInterval 或 setTimeout 结合日期计算来完成。以下是几种常见的实现方式: 使用 setInterva…

js实现图片轮播

js实现图片轮播

实现基础图片轮播 使用HTML、CSS和JavaScript创建一个简单的图片轮播。HTML部分定义轮播容器和图片,CSS设置样式和动画效果,JavaScript处理轮播逻辑。 <div cl…

jquery 菜鸟

jquery 菜鸟

以下是针对 jQuery 初学者的基础指南,涵盖核心概念和常用操作: jQuery 简介 jQuery 是一个快速、轻量级的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和…

js实现论坛

js实现论坛

实现论坛的基本功能 使用JavaScript实现一个论坛需要结合前端和后端技术。前端可以使用React、Vue或Angular等框架,后端可以选择Node.js配合Express或Koa框架。数据库可…

js实现预览

js实现预览

文件上传预览实现 使用JavaScript实现文件上传预览功能,可以通过FileReader对象读取文件内容并显示预览。以下代码支持图片、文本和PDF文件的预览: // HTML部分需要包含…

jquery api

jquery api

以下是关于 jQuery API 的详细介绍和使用方法: jQuery API 概述 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Aja…