在前端开发中,我们经常需要操作 DOM 元素,对 HTML 结构进行增删改查等操作。而在实际的开发过程中,我们不可能手动去实现这些操作,因此需要利用一些工具来进行快速开发。这时,npm 包就成为了我们的首选工具之一。本文将介绍 npm 包 jointed 的使用教程。
什么是 jointed
jointed 是一个轻量级的 JavaScript 库,旨在简化常见的 DOM 操作。它通过提供一些简单的方法,使得我们可以快速地操作 DOM 元素。它的 API 很简单易懂,适合初学者使用。
jointed 功能包括:
- DOM 节点选择器
- DOM 节点遍历
- DOM 节点增删改
安装和引入
安装 jointed 的命令如下:
npm install jointed
然后在需要使用的文件中引入:
import * as j from 'jointed';
接下来,我们可以开始使用 jointed 的 API 了。
API 详解
选择器
j.select(selector)
根据传入的选择器来选择一个或多个 DOM 节点。返回一个包含所选择的 DOM 元素的数组。
示例代码:
const divs = j.select('div'); // 获取所有 div 元素 console.log(divs); // 打印所有 div 元素
j.selectAll(selector)
根据传入的选择器来选择一个或多个 DOM 节点。返回一个包含所选择的 DOM 元素的伪数组。
示例代码:
const lis = j.selectAll('li'); // 获取所有 li 元素 console.log(lis); // 打印所有 li 元素
遍历
j.children(element)
获得指定元素的所有直接子元素。返回一个包含元素的子元素的数组。
示例代码:
const ul = j.select('ul')[0]; // 获取第一个 ul 元素 const lis = j.children(ul); // 获取 ul 元素的所有子元素 li console.log(lis); // 打印所有 li 元素
j.siblings(element)
获得指定元素的所有兄弟元素。返回一个包含元素的兄弟元素的数组。
示例代码:
const li = j.select('li')[0]; // 获取第一个 li 元素 const divs = j.siblings(li); // 获取 li 元素的所有兄弟元素除了自己 console.log(divs); // 打印所有兄弟元素
j.parent(element)
获得指定元素的父元素。返回一个包含该元素的父元素的数组。
示例代码:
const li = j.select('li')[0]; // 获取第一个 li 元素 const ul = j.parent(li); // 获取 li 元素的父元素 ul console.log(ul); // 打印 ul 元素
增删改
j.addClass(element, className)
为指定元素添加类名。
示例代码:
const li = j.select('li')[0]; // 获取第一个 li 元素 j.addClass(li, 'active'); // 给 li 元素添加 'active' 类名
j.removeClass(element, className)
从指定元素中删除类名。
示例代码:
const li = j.select('li')[0]; // 获取第一个 li 元素 j.removeClass(li, 'active'); // 删除 li 元素的 'active' 类名
j.setStyle(element, style)
为指定元素设置样式。
示例代码:
const img = j.select('img')[0]; // 获取第一个 img 元素 j.setStyle(img, { width: '100px', height: '100px' }); // 设置 img 元素的宽高
j.append(element, child)
将一个新的节点附加到指定元素的子节点列表的末尾。
示例代码:
const div = j.select('div')[0]; // 获取第一个 div 元素 const img = document.createElement('img'); // 创建一个 img 元素 img.src = 'image.png'; // 设置 img 元素的 src 属性 j.append(div, img); // 将 img 元素添加到 div 元素里面
总结
jointed 是一个非常简单易用的 DOM 操作库。它提供了一些基本的 API 来进行 DOM 节点选择、遍历、增删改,能够满足大部分日常业务需要。如果你不需要使用庞大的 jQuery 库,那么 jointed 可以成为你的一个不错的选择。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671cc30d0927023822844