https://github.com/js-bits/dom-parser
Cross-environment (nodejs/web) DOM parser for XML and HTML
https://github.com/js-bits/dom-parser
Last synced: about 2 months ago
JSON representation
Cross-environment (nodejs/web) DOM parser for XML and HTML
- Host: GitHub
- URL: https://github.com/js-bits/dom-parser
- Owner: js-bits
- Created: 2021-06-27T02:25:45.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-07-19T03:04:37.000Z (almost 3 years ago)
- Last Synced: 2024-08-11T09:24:55.043Z (almost 2 years ago)
- Language: JavaScript
- Homepage:
- Size: 600 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Cross-environment (nodejs/web) DOM parser for XML and HTML
This package uses built-in [DOMParser](https://developer.mozilla.org/en-US/docs/Web/API/DOMParser) in a browser and [jsdom](https://www.npmjs.com/package/jsdom) module in a Node.js environment and exports `parse` function.
## Installation
Install with npm:
```
npm install @js-bits/dom-parser
```
Install with yarn:
```
yarn add @js-bits/dom-parser
```
Import where you need it:
```javascript
import parse from '@js-bits/dom-parser';
```
or require for CommonJS:
```javascript
const parse = require('@js-bits/dom-parser');
```
## How to use
```javascript
const xml = `
Tove
Jani
Reminder
Don't forget me this weekend!
`;
const doc = parse(xml); // Document
console.log(doc.querySelectorAll('heading')); // NodeList
```
Optionally accepts second `mimeType` parameter (`"text/xml"` by default).
```javascript
const svg = `
`;
const doc = parse(svg, 'image/svg+xml'); // Document
console.log(doc.querySelectorAll('circle')); // NodeList
```
## Notes
- Minimal size (bytes) in a browser since [DOMParser](https://developer.mozilla.org/en-US/docs/Web/API/DOMParser) is natively supported. Does not include any polyfills.