@sparanoid/dom-inspector
v1.2.7
Published
dom inspect like chrom dev tools.
Maintainers
Readme
DomInspector
Dom inspector like chrome dev tools.

Usage
Install dom-inspector
npm install dom-inspector --save<script type="text/javascript" src="./dist/dom-inspector.min.js"></script>const DomInspector = require('dom-inspector');import DomInspector from 'dom-inspector';New instance
const inspector = new DomInspector();Instance options
const inspector = new DomInspector({
root: 'body',
exclude: ['#exclude>div', document.querySelector('.exclude')],
theme: 'you-custom-theme-class',
maxZIndex: '', // max z index, if blank, will auto get document.all max z index
transformInput: (className) => {
// Example: Remove module hashes from class names
return className.replace(/\_\_[A-Za-z0-9]+/g, '');
},
transformOutput: (classes) => {
// Example: Remove all 'js-' prefixed classes
return classes.split(' ')
.filter(c => !c.startsWith('.js-'))
.join('');
},
onClick: (classes) => {
console.log('Clicked element classes:', classes);
},
destroyOnClick: true
});root
Dom inspector root element.
StringorDom, defaultbody.exclude
Not inspect some elements.
StringorDomArray.theme
Inspector overlay style. You can custom overlay background color as follow.
.you-custom-theme-class .margin { background-color: blue; } .you-custom-theme-class .border { background-color: red; } .you-custom-theme-class .padding { background-color: green; } .you-custom-theme-class .content { background-color: gray; }Don`t forget background color opacity. ^_^
onClick
Callback function that gets triggered when clicking on an inspected element. Receives the processed classes string as argument.
const inspector = new DomInspector({ onClick: (classes) => { console.log('Clicked element classes:', classes); } });destroyOnClick
Automatically destroy the inspector after clicking an element. Default is
false.const inspector = new DomInspector({ onClick: (classes) => { console.log('Selected classes:', classes); }, destroyOnClick: true // Inspector will be destroyed after clicking });
Attribute list
inspector.targetInspecting element.
API list
inspector.enable()Display overlay
blockand addEventListenermousemove.inspector.pause()RemoveEventListener
mousemove, pause inspector.inspector.disable()RemoveEventListener
mousemove, display overlaynone.inspector.destroy()disable()and remove overlay.inspector.getXPath([ele])Return ele XPath.
inspector.getSelector([ele])Return ele selector.
html>body>div:nth-of-type(9)inspector.getElementInfo([ele])return { top: '', left: '', width: '', height: '', 'padding-top': '', 'padding-right': '', 'padding-bottom': '', 'padding-left': '', 'border-top-width': '', 'border-right-width': '', 'border-bottom-width': '', 'border-left-width': '', 'margin-top': '', 'margin-right': '', 'margin-bottom': '', 'margin-left': '' };
