Friendiiverse/App/Elems.js

35 lines
742 B
JavaScript
Raw Normal View History

2023-04-25 00:55:20 +02:00
function MkHtmlEl(Tag, Attrs) {
2023-04-24 15:03:51 +02:00
var El = document.createElement(Tag);
2023-04-23 19:46:01 +02:00
if (Attrs) {
Object.keys(Attrs).forEach(function(Attr){
2023-04-24 15:03:51 +02:00
El[Attr] = Attrs[Attr];
2023-04-23 19:46:01 +02:00
});
};
2023-04-24 15:03:51 +02:00
return El;
};
2023-04-25 00:55:20 +02:00
function MkWindow(Attrs) {
var Window = MkHtmlEl('div', Attrs);
2023-04-23 19:46:01 +02:00
Window.className += ' Window';
Root.appendChild(Window);
return Window;
};
2023-04-24 15:03:51 +02:00
2023-04-25 00:55:20 +02:00
function MkSelectMenu(Opts, Attrs) {
var Menu = MkHtmlEl('div', Attrs);
var OptsHtml = '';
Opts.forEach(function(Opt){
OptsHtml += '<li>' + MkHtmlEl('button', Opt).outerHTML + '</li>';
});
Menu.innerHTML = `
<button onclick="var El = this.nextElementSibling; El.hidden = !El.hidden;">
Select
</button>
<ul hidden="true">
${OptsHtml}
</ul>
`;
Menu.className += ' SelectMenu';
2023-04-24 15:03:51 +02:00
return Menu;
};