Skip to content

Commit cdcd69a

Browse files
author
DESKTOP-939248N\apple
committed
get all class attributes from node
1 parent 29de982 commit cdcd69a

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

docs/test.html

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,20 @@
4141
<div class="background:black:dark">
4242
<h1 class="color:white:dark"></h1>
4343
</div>
44+
<div class="background:black:white">
45+
<h2></h2>
46+
<span class="background:black:dark"></span>
47+
</div>
48+
</div>
49+
50+
<div theme="white">
51+
<div class="background:black:dark">
52+
<h1 class="color:white:dark"></h1>
53+
</div>
54+
<div class="background:black:white">
55+
<h2></h2>
56+
<span class="background:black:dark"></span>
57+
</div>
4458
</div>
4559
<nav class="nav display:flex align-items:center background:whitesmoke padding-top:10px padding-bottom:10px" data-main_content_id="content" data-scroll="sticky-nav,hide-nav" data-scroll_up="10" data-scroll_down="10" data-collection="components" data-document_id="60395ef42b3ac232657040fd"
4660
name="html">

src/index.js

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ let parsedCSS = [];
3535
let tempStyleList = [];
3636
let concatCSS = [];
3737
let styleElSheet;
38+
let elementList = [];
3839

3940
let newCSS = [];
4041
// event system
4142
let eventCallback = {};
4243
let details = {};
4344

44-
4545
const on = (event, callback) => {
4646
if (details[event])
4747
callback(parsedCSS);
@@ -94,9 +94,37 @@ const getParsedCss = () => {
9494

9595
parsedCSS = tempStyleList;
9696
tempStyleList = [];
97+
98+
elements = document.querySelectorAll("[theme]");
99+
for (let element of elements) {
100+
elementList = [];
101+
getAllChildElements(element);
102+
console.log('me?', elementList);
103+
addThemeClassList(element)
104+
}
97105
return hasChange;
98106
}
99107

108+
109+
const getAllChildElements = (element) => {
110+
111+
if (element.hasChildNodes()) {
112+
let children = element.childNodes;
113+
114+
for (let i = 0; i < children.length; i++) {
115+
if (children[i].nodeName != '#text') {
116+
if (children[i].hasAttribute('class'))
117+
elementList.push(children[i].className);
118+
getAllChildElements(children[i]);
119+
}
120+
}
121+
}
122+
}
123+
124+
const addThemeClassList = (element) => {
125+
for (let child of element.children) {}
126+
}
127+
100128
const getWholeCss = () => {
101129
let stylesheetCSS = [];
102130
let hasChange = true;

0 commit comments

Comments
 (0)