pagehtml
Version:
A tool to grab and process a website's html.
87 lines (66 loc) • 2.74 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Source: utils/getElement.js</title>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
<h1 class="page-title">Source: utils/getElement.js</h1>
<section>
<article>
<pre class="prettyprint source linenums"><code>/**
* Takes a document object model (dom) and a target element string and returns
* the text content of that element.
* @param {jsdom.JSDOM} dom The document object model, an instance of the JSDOM class.
* @param {string} elementString The HTML element to query.
* @returns {Array.<{elementText: string,
* nodeName: string,
* outerHTML: string,
* innerHTML: string,
* parentElement: string}>}
* elementText: an array of objects containing relevant element information.
*
* @example
* ```javascript
* // Search the dom for div element with id 'container'.
* let elementString = "div#container"
* getElementText(dom,elementString)
* ```
* This will return any text content in the container element.
*/
function getElementText(dom,elementString) {
let elementText = Array.prototype.map.call(dom.window.document.querySelectorAll(elementString), element =>
{
var elementTextObject = {};
elementTextObject.elementText = element.textContent.trim();
elementTextObject.nodeName = element.nodeName.toLowerCase();
elementTextObject.outerHTML = element.outerHTML;
elementTextObject.innerHTML = element.innerHTML;
elementTextObject.parentElement = element.parentElement.nodeName.toLowerCase();
return elementTextObject;
})
return elementText;
}
module.exports = getElementText;</code></pre>
</article>
</section>
</div>
<nav>
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="PageHTML.html">PageHTML</a></li></ul><h3>Global</h3><ul><li><a href="global.html#getElementText">getElementText</a></li><li><a href="global.html#getLinks">getLinks</a></li><li><a href="global.html#makeTable">makeTable</a></li></ul>
</nav>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 4.0.4</a> on Wed Feb 05 2025 14:23:55 GMT-0800 (Pacific Standard Time)
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>