Изменения от Главреда ГитЖС | Changes of GitJS Glavred
This commit is contained in:
1
0000
1
0000
@@ -8,3 +8,4 @@ x /пуск|run.js
|
|||||||
/пуск|run.череда
|
/пуск|run.череда
|
||||||
x /тема|theme.js
|
x /тема|theme.js
|
||||||
/тема|theme.череда
|
/тема|theme.череда
|
||||||
|
x /функции|functions.js
|
||||||
130
интерфейс|ui.js
130
интерфейс|ui.js
@@ -3,6 +3,136 @@
|
|||||||
// // // //
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
СоздатьОкноПоражения = мир =>
|
||||||
|
{
|
||||||
|
var структура = `
|
||||||
|
|
||||||
|
<div id="окно-поражения-тело">
|
||||||
|
<center>
|
||||||
|
<h1>Поражение</h1>
|
||||||
|
<hr class="uk-divider-icon">
|
||||||
|
<p uk-margin>
|
||||||
|
<p>Перезапустить игру с раскладкой:</p>
|
||||||
|
<button id="перезапустить-раскладку-решаемую" class="uk-button uk-button-default">Решаемой</button>
|
||||||
|
<button id="перезапустить-раскладку-нерешаемую" class="uk-button uk-button-default">Нерешаемой</button>
|
||||||
|
</p>
|
||||||
|
</center>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
`;
|
||||||
|
var вид = `
|
||||||
|
|
||||||
|
#окно-поражение-тело
|
||||||
|
{
|
||||||
|
position: absolute;
|
||||||
|
left: 50%;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateX(-50%) translateY(-50%);
|
||||||
|
pointer-events: all;
|
||||||
|
}
|
||||||
|
#окно-победы
|
||||||
|
{
|
||||||
|
opacity: 0;
|
||||||
|
background-color: white;
|
||||||
|
animation: fadeInОкноПоражения 1s ease;
|
||||||
|
animation-fill-mode: forwards;
|
||||||
|
position: fixed;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
@keyframes fadeInОкноПоражения
|
||||||
|
{
|
||||||
|
0%
|
||||||
|
{
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
100%
|
||||||
|
{
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
`;
|
||||||
|
мир.окноПоражения = добавитьОкно("окно-поражения", структура, вид);
|
||||||
|
$("#перезапустить-раскладку-решаемую").click(function() {
|
||||||
|
мир.уведомить("кнопка перезапуска с решаемой раскладкой");
|
||||||
|
});
|
||||||
|
$("#перезапустить-раскладку-нерешаемую").click(function() {
|
||||||
|
мир.уведомить("кнопка перезапуска с нерешаемой раскладкой");
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
СоздатьОкноПобеды = мир =>
|
||||||
|
{
|
||||||
|
var структура = `
|
||||||
|
|
||||||
|
<div id="окно-победы-тело">
|
||||||
|
<center>
|
||||||
|
<h1>Победа</h1>
|
||||||
|
<hr class="uk-divider-icon">
|
||||||
|
<p uk-margin>
|
||||||
|
<p>Перезапустить игру с раскладкой:</p>
|
||||||
|
<button id="перезапустить-раскладку-решаемую" class="uk-button uk-button-default">Решаемой</button>
|
||||||
|
<button id="перезапустить-раскладку-нерешаемую" class="uk-button uk-button-default">Нерешаемой</button>
|
||||||
|
</p>
|
||||||
|
</center>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
`;
|
||||||
|
var вид = `
|
||||||
|
|
||||||
|
#окно-победы-тело
|
||||||
|
{
|
||||||
|
position: absolute;
|
||||||
|
left: 50%;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateX(-50%) translateY(-50%);
|
||||||
|
pointer-events: all;
|
||||||
|
}
|
||||||
|
#окно-победы
|
||||||
|
{
|
||||||
|
opacity: 0;
|
||||||
|
background-color: white;
|
||||||
|
animation: fadeInОкноПобеды 1s ease;
|
||||||
|
animation-fill-mode: forwards;
|
||||||
|
position: fixed;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
@keyframes fadeInОкноПобеды
|
||||||
|
{
|
||||||
|
0%
|
||||||
|
{
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
100%
|
||||||
|
{
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
`;
|
||||||
|
мир.окноПобеды = добавитьОкно("окно-победы", структура, вид);
|
||||||
|
$("#перезапустить-раскладку-решаемую").click(function() {
|
||||||
|
мир.уведомить("кнопка перезапуска с решаемой раскладкой");
|
||||||
|
});
|
||||||
|
$("#перезапустить-раскладку-нерешаемую").click(function() {
|
||||||
|
мир.уведомить("кнопка перезапуска с нерешаемой раскладкой");
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
СоздатьГлавноеОкно = мир =>
|
СоздатьГлавноеОкно = мир =>
|
||||||
{
|
{
|
||||||
мир.главноеОкно = document.createElement("div");
|
мир.главноеОкно = document.createElement("div");
|
||||||
|
|||||||
@@ -1,2 +1,6 @@
|
|||||||
пуск модулей маджонга
|
пуск модулей маджонга
|
||||||
создать главное окно
|
создать главное окно
|
||||||
|
победа
|
||||||
|
создать окно победы
|
||||||
|
поражение
|
||||||
|
создать окно поражения
|
||||||
22
пуск|run.js
22
пуск|run.js
@@ -3,6 +3,28 @@
|
|||||||
// // // //
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ПерезапуститьСРешаемойРаскладкой = мир =>
|
||||||
|
{
|
||||||
|
задатьПараметрВСтрокеПоиска("🚧", "😀");
|
||||||
|
document.location.reload();
|
||||||
|
console.debug("Перезапустить РЕШ");
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ПерезапуститьСНерешаемойРаскладкой = мир =>
|
||||||
|
{
|
||||||
|
задатьПараметрВСтрокеПоиска("🚧", "😭");
|
||||||
|
document.location.reload();
|
||||||
|
console.debug("Перезапустить НЕРЕШ");
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
ЗапуститьМодулиМаджонга = мир =>
|
ЗапуститьМодулиМаджонга = мир =>
|
||||||
{
|
{
|
||||||
мир.уведомить("пуск модулей маджонга");
|
мир.уведомить("пуск модулей маджонга");
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
пуск маджонга
|
пуск маджонга
|
||||||
задать заголовок браузера
|
задать заголовок браузера
|
||||||
запустить модули маджонга
|
запустить модули маджонга
|
||||||
|
кнопка перезапуска с решаемой раскладкой
|
||||||
|
перезапустить с решаемой раскладкой
|
||||||
|
кнопка перезапуска с нерешаемой раскладкой
|
||||||
|
перезапустить с нерешаемой раскладкой
|
||||||
53
функции|functions.js
Normal file
53
функции|functions.js
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
добавитьОкно = (id, html, css) =>
|
||||||
|
{
|
||||||
|
var окно = document.createElement("div");
|
||||||
|
окно.id = id;
|
||||||
|
окно.innerHTML = html;
|
||||||
|
var вид = document.createElement("style");
|
||||||
|
вид.innerHTML = css;
|
||||||
|
document.body.appendChild(окно);
|
||||||
|
document.head.appendChild(вид);
|
||||||
|
return окно;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
задатьПараметрВСтрокеПоиска = (ключПараметра, значениеПараметра) =>
|
||||||
|
{
|
||||||
|
var строкаПоиска = decodeURI(window.location.search);
|
||||||
|
var текущийАдрес = decodeURI(window.location.href);
|
||||||
|
|
||||||
|
// Заменить параметр.
|
||||||
|
if (строкаПоиска.includes(`${ключПараметра}=`))
|
||||||
|
{
|
||||||
|
var части = строкаПоиска.split(/[\?&]/);
|
||||||
|
for (var номер in части)
|
||||||
|
{
|
||||||
|
var часть = части[номер];
|
||||||
|
if (часть.startsWith(`${ключПараметра}=`))
|
||||||
|
{
|
||||||
|
var значение = часть.split("=")[1];
|
||||||
|
var адрес = текущийАдрес.replace(значение, значениеПараметра);
|
||||||
|
history.pushState(null, "", адрес);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Добавить параметр.
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var префикс = "?";
|
||||||
|
if (строкаПоиска.startsWith("?"))
|
||||||
|
{
|
||||||
|
префикс = "&";
|
||||||
|
}
|
||||||
|
var адрес = текущийАдрес + префикс + `${ключПараметра}=` + значениеПараметра;
|
||||||
|
history.pushState(null, "", адрес);
|
||||||
|
}
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user