当前位置:首页 > JavaScript

js 实现jquery append

2026-04-07 16:24:24JavaScript

js 实现jquery append

js 实现jquery append

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

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

使用 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
分享给朋友:

相关文章

jquery api

jquery api

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。以下是 jQuery API 的核心功能和使用方法: 选择器 jQuery…

js实现轮播

js实现轮播

实现轮播图的基本思路 轮播图的核心逻辑是通过定时切换展示的图片或内容,通常结合左右滑动按钮和指示器(小圆点)增强交互性。以下是基于原生JavaScript的实现方法。 HTML结构 构建轮播图的HT…

js实现动画

js实现动画

使用 CSS 动画与 JavaScript 控制 通过 JavaScript 动态添加或移除 CSS 类来触发动画。CSS 定义关键帧(@keyframes),JavaScript 通过 classL…

js实现拖拽

js实现拖拽

实现拖拽的基本步骤 通过监听鼠标事件(mousedown、mousemove、mouseup)实现拖拽功能。以下是核心代码逻辑: const draggableElement = document.…

jquery作用

jquery作用

jQuery的作用概述 jQuery是一个快速、简洁的JavaScript库,主要用于简化HTML文档遍历、事件处理、动画设计和Ajax交互等操作。其核心目标是让开发者以更少的代码完成更多功能,同时解…

jquery 图表

jquery 图表

jQuery 图表库推荐 jQuery 本身不直接提供图表功能,但可以通过插件或集成其他库实现图表绘制。以下是几种常用的 jQuery 图表解决方案: Chart.js 集成 Chart.js 是一…