Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function createElement(tagName, textContent, attributes, children = []) {
- const element = document.createElement(tagName);
- const PARAMS = {
- id: (value) => (element.id = value),
- class: (value) => element.classList.add(value),
- styles: (styles) => styles.forEach(([s, v]) => (element.style[s] = v)),
- onclick: (value) => element.addEventListener('click', value),
- type: (value) => element.setAttribute('type', value),
- name: (value) => element.setAttribute('name', value),
- value: (value) => element.setAttribute('value', value),
- placeholder: (value) => element.setAttribute('placeholder', value),
- alt: (value) => element.setAttribute('alt', value),
- width: (value) => element.setAttribute('width', value),
- height: (value) => element.setAttribute('height', value),
- colspan: (value) => element.setAttribute('colspan', value),
- disabled: () => element.setAttribute('disabled', ''),
- src: (value) => element.setAttribute('src', value),
- };
- if (textContent) {
- element.textContent = textContent;
- }
- if (attributes) {
- Object.entries(attributes).forEach(([param, value]) => PARAMS[param](value));
- }
- if (children.length == 0) {
- return element;
- }
- children.forEach((c) => element.appendChild(c));
- return element;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement